Commit graph

61 commits

Author SHA1 Message Date
Tom M
4a0a7365ee
Refactor Soundfont loader API (#334)
* add fluid_mod_sizeof() and fluid_sample_sizeof() for low latency scenarios
* fix return value of default_fclose
* enable padding warnings for cmake enable-profiling=1
* make these types private:
  * struct _fluid_sfloader_t
  * struct _fluid_sample_t
  * struct _fluid_sfont_t
  * struct _fluid_preset_t

...and provide proper getter and setter functions
2018-02-11 16:56:53 +01:00
Tom M
5d26d2dee8
Additional general-purpose IIR filter (#331)
* Additional high-pass filter
* ability to use a linear Q
* add custom sinus modulator mapping function
* add GEN_CUSTOM_FILTERFC and GEN_CUSTOM_FILTERQ generators
* introduce fluid_synth_custom_filter()
* make custom filter user adjustable by custom flags
2018-02-11 15:18:28 +01:00
derselbst
5f8fabb651 remove fluid_cmd_handler_register() from public API
as well as fluid_cmd_handler_unregister() and fluid_cmd_t
2018-01-18 20:39:45 +01:00
derselbst
fe19ce0c24 remove fluid_synth_set_gen2() from public API 2018-01-18 20:24:58 +01:00
Marcus Weseloh
aff8f0d458 Cleanup initial attenuation generator value handling (#324)
The EMU8k/10k hardware applies a 0.4 factor to all initially set attenuation generator values. Do this once on soundfont load.

Remove the invalid -531.509 power factor that was computed from Timidiy's non-standard conversion table. And remove the synth.volenv switch again, as the "compliant" setting wasn't compliant at all.

This allows us to get rid of the atten2amp function and use cb2amp everywhere, with a range of 0 1440 centibels.

Fixes #70 
Supersedes #71 
Supersedes #318
2018-01-09 16:30:43 +01:00
derselbst
15bc24c757 cleanup API doc 2017-12-27 17:55:04 +01:00
derselbst
5c8ee9a20b mention important-channels overflow settings in API docs 2017-12-27 17:41:05 +01:00
derselbst
5f45c6d97b Revert "make fluid_midi_parser_parse() public"
This reverts commit 4568e551b9. Would allow fluidsynth to be abused as midi parser.

Closes #150
2017-12-21 14:52:06 +01:00
derselbst
4568e551b9 make fluid_midi_parser_parse() public
to enable realtime byte to fluid_midi_event_t parsing

fixes #108
addresses #150
2017-12-16 15:08:47 +01:00
Tom M
a82ddb8d08
Merge branch 'master' into sm24 2017-12-13 20:12:47 +01:00
derselbst
15a2cc793a link fluidsetting to xml in API doc 2017-12-12 20:47:22 +01:00
Tom M
deb0658205
add support for lyrics and text midi events (#299)
* partly applied karaoke patch from ticket #111
* allow MIDI_SET_TEMPO in playback_callback
2017-12-11 19:35:07 +01:00
derselbst
0619f103ea update API docs about 24bit sample support 2017-12-09 17:50:06 +01:00
Tom M
ea8ac50333
Merge branch 'master' into cleanup3 2017-12-07 17:11:35 +01:00
derselbst
a4e43d3543 re-introduce fluid_synth_set_gen2()
to reduce API breakage
2017-12-06 12:18:06 +01:00
derselbst
8a4033e2e1 mention fluid_player_seek() in API docs 2017-12-03 21:37:25 +01:00
derselbst
82450e0ee1 remove FLUID_NUM_MOD macro from public API 2017-12-03 18:39:24 +01:00
derselbst
35f679d16d mention removed enum vals in API doc 2017-11-30 13:34:33 +01:00
derselbst
01040409ba exclude private headers from public API doc generation 2017-11-30 12:55:20 +01:00
derselbst
5bc1f57ec5 mention ladspa functions in API docs 2017-11-27 18:30:20 +01:00
derselbst
c5cdcb8eda remove deprecated fluid_synth_reset_tuning() 2017-11-27 18:01:19 +01:00
derselbst
70a1c82a5e remove deprecated fluid_synth_select_tuning() 2017-11-27 18:00:50 +01:00
derselbst
0bb8726583 remove deprecated fluid_synth_create_octave_tuning() 2017-11-27 17:56:03 +01:00
derselbst
7140e971ec remove deprecated fluid_synth_create_key_tuning() 2017-11-27 17:52:58 +01:00
derselbst
62df9178ae remove deprecated fluid_synth_get_channel_info()
it provided functionality in between of fluid_synth_get_program() and fluid_synth_get_channel_preset(), which however was not visible from the user perspective
2017-11-27 17:49:10 +01:00
derselbst
4d65e07156 get rid of redundant fluid_sample_refcount macro
and access field directly
2017-11-27 17:27:37 +01:00
derselbst
4776b7e407 remove macro fluid_sfont_get_id() from public API 2017-11-27 17:19:29 +01:00
derselbst
9900d5f151 rename fluid_mod_new|delete() to match naming conventions 2017-11-27 16:58:27 +01:00
Tom M
621c84f6a1
Merge branch 'master' into file-callback 2017-11-27 14:52:20 +01:00
derselbst
99c03350fc update API docs about unique portaudio device names 2017-11-26 13:41:46 +01:00
derselbst
7a22eb87f6 add an example of how read a soundfont from memory 2017-11-26 10:07:08 +01:00
derselbst
332c221cfb update docs about file callback struct 2017-11-26 09:29:35 +01:00
derselbst
5051dcb131 mention fluid_synth_remove_default_mod() in API docs 2017-11-24 17:43:38 +01:00
derselbst
7ed5d1f1d8 update docs about upper roomsize threshold 2017-11-22 16:56:51 +01:00
Tom M
eb5945bb2c
make dsound use the desktop window handle (#286)
* Dsound driver is now making use of an already existing window handle: the desktop window
* Removing of fluid_dll.c because it has becoming useless
* avoid a potential deadlock when calling functions within DllMain()
* remove obsolete fluid_set_hinstance() and fluid_get_hinstance() from public API
2017-11-22 16:42:48 +01:00
derselbst
d00dc1c78a correct API doc
fluid_audio_driver_register() is scheduled for 1.1.9
2017-11-22 14:20:25 +01:00
Tom M
d24c2a1179
Merge branch 'master' into register-adriver 2017-11-20 16:39:15 +01:00
derselbst
7dee2c18e9 implement handling of FLUID_SEQ_ALLSOUNDSOFF 2017-11-15 17:10:26 +01:00
derselbst
9c6de2bb79 update API doc 2017-11-15 16:57:16 +01:00
derselbst
13728ed0bd update API doc about fluid_audio_driver_register() 2017-11-11 15:27:35 +01:00
Tom M
df1c9a3e5c
update api doc about destructor functions 2017-11-09 20:40:36 +01:00
Tom M
a13cf153d9
Merge pull request #265 from FluidSynth/delete-refactor
refactor destructor functions to return void if possible and make them safe when called with NULL
2017-11-08 15:45:49 +01:00
derselbst
61e95d0647 bump doxygen API version to 2.0 2017-10-30 19:50:58 +01:00
derselbst
242c2cd119 replace NEXT_RELEASE with 2.0.0
find . -type f -exec sed -i s/@NEXT_RELEASE@/2.0.0/ '{}' \;
2017-10-30 19:26:40 +01:00
derselbst
9b6d3d4c55 support for registering audio drivers based on actual needs 2017-10-30 17:42:37 +01:00
derselbst
f4940e72e2 update API doc to reflect delete_* returning void 2017-10-30 12:05:24 +01:00
Tom M
6f3b9da191 Merge pull request #220 from FluidSynth/fluidsettings-doc
move fluidsettings doc to xml
2017-10-19 12:46:26 +02:00
derselbst
d54a9af4ea remove fluid settings from public API doc
instead refer to new fluidsettings.xml
2017-10-16 18:08:29 +02:00
derselbst
77f4604498 update API doc for 1.1.8 2017-10-12 11:53:08 +02:00
derselbst
360ae04135 update API doc 2017-10-07 15:21:38 +02:00