The game crashes because the SoundEffect.SoundBuffer (in SoundEffect.OpenAL.cs) is not set
Theres only one assignment anywhere and it’s in SoundEffect.PlatformInitialize but this is only ever called from one of the two SoundEffect constructors. The other constructor is empty and thats the one that gets called when you load the sound effect.
Without having any real understanding of the code path I copied the lines:
SoundBuffer = new OALSoundBuffer();
SoundBuffer.BindDataBuffer(_data, Format, Size, (int)Rate);
into SoundEffect.PlatformLoadAudioStream (in SoundEffect.OpenAL.cs) and it seems to have solved the issue. It would be great if someone who has some knowledge of the system could take a look at this and determine the optimal way of fixing this for the official branch (if it hasn’t already been fixed).