FluidSynth と SDL_Mixer を使用して、この問題を解決しようとしています。
Windowsで最新バージョンのSDL_Mixer 1.2.12(公式WebサイトのDLL)とFluidSynth 1.1.6(こちらのDLL )を使用しています。これらは互いに動作するはずです。
FluidSynth DLL の名前を SDL_Mixer に従って「libfluidsynth.dll」に変更し、「SDL_Mixer.dll」の隣に配置しました。SDL_SetSoundFonts()、SDL_SOUNDFONTS、さらには SDL_putenv() を通じて、sf2 への絶対パスと相対パスを渡しました。Mix_OpenAudio() の前後に呼び出しを入れてみました。
しかし、SDL_Mixer を介して MIDI ファイルを再生すると、デフォルトの Timidity++ 出力しか得られません。Mix_GetError() はメッセージを返しません。私は何が欠けていますか?