Today I’ve noticed some strange behavior on my Windows Phone. I was working on a game which uses the SoundEffect to play wave files.
_match = SoundEffect.FromStream(TitleContainer.OpenStream("Audio/m-match.wav"));
FrameworkDispatcher.Update();
_match.Play(.5f, 1f, 1f);
The _match
SoundEffect was the only sound that was played at a lower volume level than 100% and was the only sound that did not play at all. When I changed the code to
_match.Play();
It worked again. So I opened the wave in my wave editor, adjusted the volume there and saved it. This time some clipping occurred.
It seemed like a part of the sound was missing. In the emulator everything worked OK. I tried different wave formats (mono/stereo/16bit/8bit) but the clipping occured every time on the device.
I just found out what the problem was. The volume of my phone was at a low level — not off — and it seems that the Phone has some sort of gate mechanism that cuts of sounds if they are not above a certain level. Turning the volume up did the trick. Like Rakim said: Pump up the volume!