Commit graph

2404 commits

Author SHA1 Message Date
derselbst
405d4bc48b Move global variable delay_length to inner scope 2019-11-03 09:20:41 +01:00
derselbst
a7162f1ef1 Fix -Wsign-compare in fluid_chorus.c 2019-11-03 08:43:46 +01:00
derselbst
accae4ef82 Add missing header guards 2019-11-03 08:41:20 +01:00
derselbst
bf6cc7ef6f Enable type-checking against format string of fluid_log() 2019-11-03 08:14:52 +01:00
jjceresa
fdbd13e77c Make reverb output independent of sample rate (#584)
Fixes #581
2019-11-01 16:26:46 +01:00
derselbst
56dd87ebf1 Deprecate fluid_synth_set_sample_rate()
Addresses #585
2019-10-31 09:29:55 +01:00
derselbst
f7eb9e0c17 Make fluid_is_soundfont() DLS aware 2019-10-31 08:47:14 +01:00
jjceresa
d4b3a08f53 fix comment in fluid_rvoice_calc_amp() (#583) 2019-10-27 18:05:18 +01:00
derselbst
e739246ef7 Fix broken #ifdef 2019-10-27 17:10:33 +01:00
derselbst
99a0ccbaad Adjust SOVERSION for 2.1.0RC1 2019-10-27 17:00:53 +01:00
derselbst
644668a776 Merge branch '2.0.x' into master 2019-10-27 16:52:45 +01:00
derselbst
56a4507513 Mention fluid_sample_set_sound_data() in API docs 2019-10-27 16:49:04 +01:00
Tom M
38b929e501
Fix broken voice mixing (#582)
This fixes a regression introduced in 907ec27a9e

When rendering a voice, there are 3 cases to consider: silent, playing,
and finished. When optimizing away the memset, I incorrectly assumed that
a voice cannot switch between playing and silence (like crazy) while
rendering FLUID_MIXER_MAX_BUFFERS_DEFAULT. Apparently this does not
hold true, esp. when rendering at sample rates ~96kHz.
2019-10-27 16:45:07 +01:00
derselbst
5c442c9b13 Document --quiet option in manual 2019-10-27 12:18:00 +01:00
derselbst
68c7989d0d Ensure NDEBUG disables assertions 2019-10-27 09:40:37 +01:00
Tom M
59be52ea3b
fluidsynth exec: let option -j connect MIDI devices as well (#578) 2019-10-26 12:28:16 +02:00
derselbst
64d4fe0402 Fix chorus buffer line being partly uninitialized 2019-10-25 15:26:27 +02:00
derselbst
881eb9b080 Mention new audio drivers in API docs 2019-10-23 21:16:05 +02:00
derselbst
585396d36e Bump version to 2.1.0 RC1 2019-10-23 21:00:38 +02:00
derselbst
79e5807a14 Mention fluid_sample_set_sound_data() in API docs 2019-10-23 20:53:52 +02:00
jjceresa
ee5294c060 move fluid_profile_ref_var() (#577) 2019-10-23 19:56:22 +02:00
derselbst
18ad9df21b Bump required libinstpatch version to 1.1.0 2019-10-23 17:28:55 +02:00
jjceresa
0288466f40 Chorus enhancement. (#548)
This adds new LFO modulators:
 - these modulators are computed on the fly, instead of using lfo lookup table. Advantages:
      - Avoiding a lost of 608272 memory bytes when lfo speed is low (0.3Hz).
      - Allows to diminish the lfo speed lower limit to 0.1Hz instead of 0.3Hz.
        A speed of 0.1 is interesting for chorus. Using a lookup table for 0.1Hz
        would require too much memory (1824816 bytes).
      - Make use of first-order all-pass interpolator instead of bandlimited interpolation.
      - Although lfo modulator is computed on the fly, cpu load is lower than using
        lfo lookup table with bandlimited interpolator.

Also adds a stereo unit controlled by WIDTH macro. WIDTH [0..10] value define a stereo separation between left and right.
 - When 0, the output is monophonic.
 - When > 0 , the output is stereophonic.

 WIDTH is currently fixed to maximum value to provide maximum stereo effect.
2019-10-23 16:41:13 +02:00
derselbst
f2b7438511 TravisCI: add ppc64 and arm64 builds 2019-10-23 16:24:07 +02:00
derselbst
171f3396a4 Format fluid_synth_write_*() 2019-10-23 14:33:34 +02:00
derselbst
988ec6d799 Add proper fluid_ret_val_if_fail checks for rendering functions 2019-10-23 14:33:34 +02:00
Carlo Bramini
8aef0930c6 Speedup rendering functions (#573) 2019-10-23 13:33:22 +02:00
derselbst
eef361eb35 Update API doc of fluid_synth_noteon() 2019-10-22 18:12:50 +02:00
Tom M
64cee5537d
Handle deprecation of GTimeVal (#575)
`GTimeVal` has been deprecated in glib 2.62 . While switching to `g_get_monotonic_time()`, I realized that we could simply reuse `fluid_utime()` for that purpose.
2019-10-22 17:39:08 +02:00
derselbst
dfcf5c019f Add a unit test for fluid_synth_write_float 2019-10-22 16:08:41 +02:00
derselbst
5a42e8147f Extend comment in fluid_ct2hz_real() 2019-10-22 14:37:08 +02:00
Tom M
fa7354a336
More efficient implementation of fluid_ct2hz() (#569)
This provides a less branchy and therefore more instruction-cache-friendly version of fluid_ct2hz(), which also significantly reduces the number of floating-point comparisons.
2019-10-22 13:09:42 +02:00
derselbst
41e77afe84 Merge branch '2.0.x' into master 2019-10-22 11:39:42 +02:00
Stefan Westerfeld
50dd443c20 Fix bugs in fluid_sample_set_sound_data with copy enabled
- memset should clear all the memory
- end position should be at the end of sample data

Closes #576

Signed-off-by: Stefan Westerfeld <stefan@space.twc.de>
2019-10-21 21:03:14 +02:00
derselbst
1f2c301cc3 Build fluidsynth for Android in RelWithDebInfo 2019-10-21 15:16:35 +02:00
derselbst
ca5108d81c Fix "declaration-after-statement" in opensles driver 2019-10-21 14:35:17 +02:00
derselbst
6e45cfc308 Move declaration of fluid_alloc() to fluidsynth_priv.h
Fixes build of opensles, oboe and coreaudio.
2019-10-21 14:27:05 +02:00
derselbst
82c962afb2 Change Android build badge 2019-10-21 14:21:09 +02:00
derselbst
302dc704cd Split Mac and Windows CI build badges 2019-10-21 13:23:44 +02:00
derselbst
606c4d47b6 Turn implicit function declarations into errors 2019-10-21 13:01:50 +02:00
derselbst
34a18d2480 Update OS icons in README 2019-10-21 09:49:34 +02:00
derselbst
f891b6f2c2 Fix Android build status badge in README 2019-10-20 23:12:04 +02:00
Jon Latané
d312def0ce Android CircleCI Build (#574) 2019-10-20 23:09:23 +02:00
Carlo Bramini
6895731df2 Remove GLIB macros for int <=> pointer conversion (#572)
The synthesizer is using stdint types for a long time, perhaps for consistency, it would be worth to get rid of the GLIB macros for integer to pointer conversion and viceversa, and use just a type cast for that purpose.
2019-10-19 18:25:31 +02:00
derselbst
aafc59bde6 Fix Windows Azure Release Build 2019-10-19 18:20:09 +02:00
Tom M
cab46b40c1
Fix incorrect usage of fluid_ct2hz() (#568) 2019-10-18 21:41:43 +02:00
derselbst
3c4861c752 Add a unit test for fluid_ct2hz_real() 2019-10-18 21:03:00 +02:00
Tom M
5919be2ceb
Revise README (#566)
The readme has been revised. Most of the SoundFont related information was moved to the wiki. Obsolete documentation files have been removed.
2019-10-13 10:56:24 +02:00
derselbst
840953f54d Add more Cirrus FreeBSD CI builds 2019-10-07 13:25:12 +02:00
derselbst
bf06638178 Add missing declaration of fluid_alloc to fluid_instpatch 2019-10-05 16:55:26 +02:00