fluidsynth: new decoder plugin for MIDI files

There are a few problems left in this plugin:

- fluidsynth decodes in real time, while MPD prefers to buffer as
  quickly as possible; as a workaround, this plugin uses a timer
  object to synchronize with real-time playback

- I don't know yet how fluidsynth tells me when the song has ended

- the "soundfont" configuration setting is not yet documented, and it
  will likely change soon (in favor of a per-decoder configuration
  block)
This commit is contained in:
Max Kellermann
2009-02-12 08:43:26 +01:00
parent de2e13cafe
commit e56a90f3b3
6 changed files with 268 additions and 1 deletions

View File

@@ -35,6 +35,7 @@ extern const struct decoder_plugin wavpack_plugin;
extern const struct decoder_plugin modplug_plugin;
extern const struct decoder_plugin mikmod_decoder_plugin;
extern const struct decoder_plugin sidplay_decoder_plugin;
extern const struct decoder_plugin fluidsynth_decoder_plugin;
extern const struct decoder_plugin ffmpeg_plugin;
static const struct decoder_plugin *const decoder_plugins[] = {
@@ -74,6 +75,9 @@ static const struct decoder_plugin *const decoder_plugins[] = {
#ifdef ENABLE_SIDPLAY
&sidplay_decoder_plugin,
#endif
#ifdef ENABLE_FLUIDSYNTH
&fluidsynth_decoder_plugin,
#endif
#ifdef HAVE_FFMPEG
&ffmpeg_plugin,
#endif