If by SoundOutput you mean win32_sound_output structure, then it does not have BitsPerSample. It has BytesPerSample. sizeof(int16)*2 = 2*2 = 4. 4 bytes per sample - 2 for left channel, 2 for right channel. That's just how Casey decided to measure needed bytes for sound. In that place by "sample" he means "all the pieces of memory needed for all the channels".