Circuit to drive a speaker
Speakers, even bad ones need to be driven with an AC current or AC voltage - this is because there is usually a magnet that has a moving-coil wound round it. The moving-coil attaches to the diaphram that makes the sound. and the average position of the coil-diaphram is its undriven rest position. All is well when this occurs.

You are proposing to drive the coil with an intermittent DC voltage and this may work but it will also likely damage your speaker. It may damage it instantly or it may damage it gradually or you may be lucky and it won't get damaged.

Your signal is 12Vp-p but there is a standing 6Vdc voltage on this signal because of your proposed solution. This contributes nothing other than warming the coil in the speaker - this produces no sound and is wasted energy. The speaker doesn't know how to deal with this other than force its cone or diaphram in one direction or the other AND dissipate probably in the other of 12W - I remember testing an 8 ohm speaker - it had a dc resistance of 6ohms and for your 4 ohm speaker I calculated 12W on that experiment.