62 lines
2.2 KiB
Text
62 lines
2.2 KiB
Text
Index: src/drivers/fluid_mdriver.c
|
|
--- src/drivers/fluid_mdriver.c.orig
|
|
+++ src/drivers/fluid_mdriver.c
|
|
@@ -24,7 +24,7 @@
|
|
#undef FLUID_MIDI_SUPPORT
|
|
|
|
#if ALSA_SUPPORT || JACK_SUPPORT || OSS_SUPPORT || \
|
|
- WINMIDI_SUPPORT || MIDISHARE_SUPPORT || COREMIDI_SUPPORT
|
|
+ WINMIDI_SUPPORT || MIDISHARE_SUPPORT || COREMIDI_SUPPORT || SNDIO_SUPPORT
|
|
/* At least an input driver exits */
|
|
#define FLUID_MIDI_SUPPORT 1
|
|
#endif
|
|
@@ -53,6 +53,15 @@ fluid_midi_driver_t *new_fluid_jack_midi_driver (fluid
|
|
int delete_fluid_jack_midi_driver(fluid_midi_driver_t *p);
|
|
#endif
|
|
|
|
+/* SNDIO */
|
|
+#if SNDIO_SUPPORT
|
|
+fluid_midi_driver_t* new_fluid_sndio_midi_driver(fluid_settings_t* settings,
|
|
+ handle_midi_event_func_t handler,
|
|
+ void* event_handler_data);
|
|
+int delete_fluid_sndio_midi_driver(fluid_midi_driver_t* p);
|
|
+void fluid_sndio_midi_driver_settings(fluid_settings_t* settings);
|
|
+#endif
|
|
+
|
|
/* OSS */
|
|
#if OSS_SUPPORT
|
|
fluid_midi_driver_t* new_fluid_oss_midi_driver(fluid_settings_t* settings,
|
|
@@ -105,6 +114,12 @@ struct fluid_mdriver_definition_t {
|
|
|
|
|
|
struct fluid_mdriver_definition_t fluid_midi_drivers[] = {
|
|
+#if SNDIO_SUPPORT
|
|
+ { "sndio",
|
|
+ new_fluid_sndio_midi_driver,
|
|
+ delete_fluid_sndio_midi_driver,
|
|
+ fluid_sndio_midi_driver_settings },
|
|
+#endif
|
|
#if JACK_SUPPORT
|
|
{ "jack",
|
|
new_fluid_jack_midi_driver,
|
|
@@ -158,7 +173,9 @@ void fluid_midi_driver_settings(fluid_settings_t* sett
|
|
FLUID_DEFAULT_MIDI_RT_PRIO, 0, 99, 0, NULL, NULL);
|
|
|
|
/* Set the default driver */
|
|
-#if ALSA_SUPPORT
|
|
+#if SNDIO_SUPPORT
|
|
+ fluid_settings_register_str(settings, "midi.driver", "sndio", 0, NULL, NULL);
|
|
+#elif ALSA_SUPPORT
|
|
fluid_settings_register_str(settings, "midi.driver", "alsa_seq", 0, NULL, NULL);
|
|
#elif JACK_SUPPORT
|
|
fluid_settings_register_str(settings, "midi.driver", "jack", 0, NULL, NULL);
|
|
@@ -178,6 +195,9 @@ void fluid_midi_driver_settings(fluid_settings_t* sett
|
|
#if ALSA_SUPPORT
|
|
fluid_settings_add_option(settings, "midi.driver", "alsa_seq");
|
|
fluid_settings_add_option(settings, "midi.driver", "alsa_raw");
|
|
+#endif
|
|
+#if SNDIO_SUPPORT
|
|
+ fluid_settings_add_option(settings, "midi.driver", "sndio");
|
|
#endif
|
|
#if JACK_SUPPORT
|
|
fluid_settings_add_option(settings, "midi.driver", "jack");
|