Commit graph

569 commits

Author SHA1 Message Date
Tom M
ab5ab33d60 Merge pull request #198 from FluidSynth/fixed_key
Fixed key notes are never released
2017-09-03 11:11:42 +02:00
derselbst
dde01108b8 do not overwrite fluid_voice::vel by GEN_VELOCITY
use fluid_voice_get_actual_velocity() instead
2017-09-03 11:06:29 +02:00
derselbst
68d12491d2 fix modulator calc for fixed key and vel 2017-09-03 00:56:32 +02:00
derselbst
c54990540d explain myself 2017-09-03 00:38:55 +02:00
derselbst
311958ddad make fluid_voice getters const correct 2017-09-03 00:34:54 +02:00
derselbst
3009c00853 make sure fixed key voices are released
fixes #159
2017-09-03 00:33:23 +02:00
derselbst
60fbc018e5 prefer getter functions for fluid_voice 2017-09-03 00:22:07 +02:00
derselbst
f3ab771541 fluid_voice: take care of fixed vel and key generators 2017-09-03 00:01:45 +02:00
Tom M
83b62cfa80 Merge pull request #193 from FluidSynth/timing
workaround timing issues
2017-09-01 18:26:20 +02:00
Tom M
da14a19785 fix wording 2017-09-01 17:35:11 +02:00
Tom M
1dc56f8bf0 Merge pull request #196 from imhcyx/issue195
fix seq time scale issue
2017-09-01 14:51:01 +02:00
Tom M
56a2ce1fa4 clarify comment 2017-09-01 14:50:34 +02:00
imhcyx
1df1d86562 fix seq time scale issue 2017-08-31 08:34:18 +08:00
derselbst
f600e7aa01 update doc 2017-08-27 21:34:43 +02:00
derselbst
597667b9c0 deprecate "synth.parallel-render" 2017-08-27 20:42:10 +02:00
derselbst
544e1b0e17 move useful fluid_voice macros to public API 2017-08-27 16:17:15 +02:00
derselbst
78f06d1be2 cleanup 2017-08-27 12:51:36 +02:00
derselbst
6b847829ef no need for atomic_int_dec_and_test() 2017-08-27 12:48:32 +02:00
derselbst
0bf4873ab2 atomically read queue_stored 2017-08-27 12:46:54 +02:00
derselbst
680fcf1f88 avoid data races in rvoice_eventhandler and cleanup
- an element from the queue might be requested from thread A
- thread A is put to sleep just before he could insert his event and increment queue_stored
- thread B request an element from queue, gets the same as thread A
- thread B commits his changes and increases queue_stored
- thread A wakes up, commits his changes
- event of thread B is lost
2017-08-27 12:46:37 +02:00
derselbst
ef9564e000 always enforce enqueuing rvoice_events 2017-08-27 12:43:24 +02:00
derselbst
31d847c898 dev-docs: fix broken links 2017-08-26 11:15:20 +02:00
derselbst
54e067548e cleanup fluid_synth 2017-08-25 23:25:18 +02:00
derselbst
06b6e07bde remove unused fluid_event_queue.h 2017-08-25 21:49:51 +02:00
Tom M
b08021b030 Merge pull request #194 from FluidSynth/mod_refactor
refactor modulator handling
2017-08-25 13:43:28 +02:00
Tom M
5cc1d9f659 complain if modulator source unknown 2017-08-24 21:47:17 +02:00
derselbst
b7673c0e25 correctly transform mod. source values from pitch bend 2017-08-23 16:37:46 +02:00
derselbst
e641151511 specify C standard explicitly 2017-08-23 11:19:05 +02:00
derselbst
1bb6210f91 clarify comment 2017-08-22 17:25:04 +02:00
derselbst
fa3894c97f workaround for #192 2017-08-22 17:20:00 +02:00
Tom M
4b3590a326 warn if a voice exceeds supported modulator count 2017-08-21 18:41:04 +02:00
Tom M
081595464b specify fluid_mod_src flags explicitly 2017-08-21 18:30:41 +02:00
derselbst
64399b1b01 refactor fluid_mod_get_value()
move switch cases to distinct functions and fix many errors when previously calculating modulator source2
2017-08-20 18:54:40 +02:00
derselbst
6c3061cba3 expose a getter for bufcount for rvoice_mixer 2017-08-19 22:01:47 +02:00
derselbst
8d952d1e59 comment 2017-08-18 23:00:56 +02:00
derselbst
12db1c0d34 average overall error during cast
addresses #141
2017-08-18 17:54:01 +02:00
derselbst
d313db553f do not process more blocks than we can store internally
addresses #192
2017-08-18 17:53:12 +02:00
Tom M
1344059be4 Merge pull request #190 from FluidSynth/fluid_player
Add get tempo/bpm and get length/currentBeat to fluid_player
2017-08-16 10:06:18 +02:00
Tom M
27c347a28d add documentation to new fluid_player getters 2017-08-16 09:37:35 +02:00
Tom M
da1b95cb19 reorder function delcaration in midi.h 2017-08-16 09:22:43 +02:00
Stephen Kyne
4a1ca1712e Fix for snprintf for > VS2015 2017-08-16 09:08:26 +02:00
Juan Borda
2f5c6dda83 Add get tempo/bpm and get length/currentBeat to fluid_player 2017-08-16 09:03:52 +02:00
derselbst
b92b9d64da use doxygen @note 2017-08-13 15:16:55 +02:00
derselbst
712ce4b935 add more getters for fluid_voice_t to public API
for channel, key and velocity
2017-08-13 15:08:22 +02:00
derselbst
84095fead8 another sample loop check fixup
- for compressed samples set loopend and loopstart independently from each other
- for raw samples set loopend to first sample after valid sample data, to also have the very last sample actually be played
2017-08-12 15:55:47 +02:00
derselbst
59545adac2 match up sample loop check of vorbis compressed samples
with uncompressed ones
2017-08-11 18:43:22 +02:00
derselbst
4f27a9a849 sync loop check of uncompressed samples with swami 2017-08-11 18:37:47 +02:00
derselbst
b04dbe3b9c fix incorrect loop check 2017-08-11 15:05:19 +02:00
derselbst
05929af1dd Revert "move sample loop fixup to dedicated function"
This reverts commit c254b437d3.

can not use same loop fix function because logic must be different: SF2 samples are stored in one huge chunk, SF3 decompressed samples stored in individual buffers.
2017-08-11 14:43:00 +02:00
Tom M
070dc29d20 Merge pull request #183 from fabiangreffrath/sf3-fonts
Add support for sound fonts in SF3 format that contain Ogg Vorbis compressed samples
2017-08-11 14:41:33 +02:00