MusicPlus: Implement SDL Mixer X for non-native MIDI and stable MP3
This introduces the SDL Mixer X library, a drop-in replacement for Mixer, into Win32. It fixes MP3 glitchiness and crashyness and also gives MIDI three new engines:
- OPNMIDI: Default, a YM2612 emulator with no external files required.
-
FluidSynth: Plug-and-play, just supply it with an SF2 soundfont and it does the rest.
-
Grab any soundfont here, make sure it's SF2 format. Default path is
[srb2dir]/sf2
and configure the filename in Sound Options.
-
Grab any soundfont here, make sure it's SF2 format. Default path is
-
Timidity: For advanced configuration, give it a config path with banks all set.
-
Example banks, extract any of these to
[srb2dir]/timidity
-
Example banks, extract any of these to
Implementation
- Win32 only, because I'm not bothered to figure out how this affects Linux packaging. Regardless, Makefiles and buildbots work on all platforms.
- Linux doesn't need this anyway, because MP3 is stable and MIDI is routed to the user's choice library.
- Adds new console variables
midiplayer
,midisoundfontpath
, andmiditimiditypath
. Sound Options menu is changed too