|
libfluidsynth 2.5.4
|
SoundFont synthesizer. More...
Topics | |
| Audio Rendering | |
| The functions in this section can be used to render audio directly to memory buffers. | |
| Effect - Chorus | |
| Functions for configuring the built-in chorus effect. | |
| Effect - IIR Filter | |
| Functions for configuring the built-in IIR filter effect. | |
| Effect - LADSPA | |
| Functions for configuring the LADSPA effects unit. | |
| Effect - Reverb | |
| Functions for configuring the built-in reverb effect. | |
| MIDI Channel Setup | |
| The functions in this section provide interfaces to change the channel type and to configure basic channels, legato and portamento setups. | |
| MIDI Tuning | |
| The functions in this section implement the MIDI Tuning Standard interface. | |
| SoundFont Management | |
| Functions to load and unload SoundFonts. | |
| Synthesis Parameters | |
| Functions to control and query synthesis parameters like gain and polyphony count. | |
| Synthesis Voice Control | |
| Low-level access to synthesis voices. | |
Lifecycle Functions for Synthesizer_linebr@{ | |
| fluid_synth_t * | new_fluid_synth (fluid_settings_t *settings) |
| Create new FluidSynth instance. | |
| void | delete_fluid_synth (fluid_synth_t *synth) |
| Delete a FluidSynth instance. | |
Functions | |
| const char * | fluid_synth_error (fluid_synth_t *synth) |
| Get a textual representation of the last error. | |
| double | fluid_synth_get_cpu_load (fluid_synth_t *synth) |
| Get the synth CPU load value. | |
SoundFont synthesizer.
You create a new synthesizer with new_fluid_synth() and you destroy it with delete_fluid_synth(). Use the fluid_settings_t structure to specify the synthesizer characteristics.
You have to load a SoundFont in order to hear any sound. For that you use the fluid_synth_sfload() function.
You can use the audio driver functions to open the audio device and create a background audio thread.
The API for sending MIDI events is probably what you expect: fluid_synth_noteon(), fluid_synth_noteoff(), ...
| void delete_fluid_synth | ( | fluid_synth_t * | synth | ) |
Delete a FluidSynth instance.
| Synthesizer | FluidSynth instance to delete |
| const char * fluid_synth_error | ( | fluid_synth_t * | synth | ) |
Get a textual representation of the last error.
| Synthesizer | FluidSynth instance |
| double fluid_synth_get_cpu_load | ( | fluid_synth_t * | synth | ) |
Get the synth CPU load value.
| Synthesizer | FluidSynth instance |
| fluid_synth_t * new_fluid_synth | ( | fluid_settings_t * | settings | ) |
Create new FluidSynth instance.
| Settings | Configuration parameters to use (used directly). |
settings parameter is used directly, but the synth does not take ownership of it. Hence, the caller is responsible for freeing it, when no longer needed. Further note that you may modify FluidSettings of the settings instance. However, only synth settings marked as realtime in Settings Reference will affect the synth at runtime. fluid_settings_is_realtime() can be used to check this.settings object should only be used by a single synth at a time. I.e. creating multiple synth instances with a single settings object causes undefined behavior. Once the "single synth" has been deleted, you may use the settings object again for another synth.