I'm reading the documentation for WAV files (and importing them in C++)It seems like 44100 amplitude (this can change, and is specified by the WAV header) values get sent to the sound card every second. What I don't understand is that these amplitudes can be negative. I'm confused as to what these amplitude values represent. How can they be negative and positive? What happens when you send an amplitude value to a sound card to produce a sound that you can hear?

  • 2
    $\begingroup$ I might only add that acoustic pressure are the oscillations around the atmospheric pressure. Atmospheric pressure doesn’t change fast so it can be assumed as DC offset. This is also why the maximum possible SPL for symmetric wave in standard conditions (1013 hPa) is roughly 194 dB. $\endgroup$
    – jojek
    Aug 22 '18 at 21:49

They represent fluctuations from atmospheric pressure.

  • Positive values = increases in pressure = speaker cone moving outward
  • Negative values = decreases in pressure = speaker cone moving inward
  • Zero = no change in pressure = speaker cone in its relaxed center position = 1 atm

Since we can't hear a constant pressure, the constant pressure is averaged out and ignored, and only the relative vibrations are important.

  • $\begingroup$ Ah I get it. So the amplitude controls the speaker cone position every 1/44100 of a second. $\endgroup$
    – War Donkey
    Aug 22 '18 at 21:48
  • $\begingroup$ @SpentDeath More or less, yes $\endgroup$
    – endolith
    Aug 23 '18 at 3:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.