I have recently upgraded my game from MonoGame 3.4 to 3.5. It’s used to be WindowsGL so now it’s DesktopGL one.
I have successfully built my code in VS and all assets in new Content Pipeline. Game runs fine but songs and sound effects seems to be distorted like it’s playing very short audio files with big gaps. In fact, it’s sounds more like a random noise.
I’m running visual studio 2015 on windows 10 and I can play ogg files fine. Happens for both debug and release. Any ideas if have missed some setup step (I do have OpenAL)? It used to run fine on 3.4.
And the sounds and songs, those files were tested to work before 3.5 upgrade?
-Because I’ve had issues with various soundfiles due to bit/sample rate or some other export setting… So I had to export the sound from my music-program again within a valid quality range…
Are you able to provide us with a sample project that shows the issue?
I’m converting from wav file, but I haven’t tried other formats. I also have noticed there is “Quality” option in MonoGame Pipeline, I’ll try to change that as well.
Here is sample project with ogg file Added to Content project, loaded using ContentManager and played with MediaPlayer.
Did you ever fix this? I’m having the exact same issue
No. I have switched my project to DirectX for now (It looks like it’s preferred way for Windows). I will try once again once I finish the game and start porting to Linux.
You likely have the quality property set to something less than Best, which means it is creating compressed ADPCM sounds. Our OpenAL implementation does not support ADPCM yet, do it is playing the ADPCM data as PCM, and thus sounds bad.
Thank you! I will make sure it’s set to Best.
Is there is specific format preferred for input in MonoGame Content Manager? PCM WAV I guess?
16-bit PCM WAV is the easiest.
I tired using 16-bit wav and best quality but I still get the same issue. Is GL off the table for now?
Hi, have you made sure your soundEffect.Play(); is only being called once at a time? if its in the update loop its possible its being called each frame.