Commit graph

774 commits

Author SHA1 Message Date
Jai Veer
2cc0d0ea17 Check for NULL sfont in fluid_handle_fonts
Closes ticket #139.
2015-05-12 13:03:03 +02:00
Jean-Jacques Ceresa
048c51c4ab Add sostenuto pedal functionality (ticket #47, #136)
Apart from adding sostenuto pedal functionality, this also changes
the behaviour of dampening currently sounding notes on the same key
to ignore pedals.

Signed-off-by: David Henningsson <diwic@ubuntu.com>
2015-04-07 13:48:04 +02:00
Carlos Olmedo Escobar
f11592a8a4 Same expression on both sides of '||'.
wakeup_threads_m replaced with thread_ready_m. Spotted thanks to cppcheck.

Signed-off-by: Carlos Olmedo Escobar <carlos.olmedo.e@gmail.com>
2015-01-22 01:47:15 +01:00
Element Green
b75c8fdb17 fluid_server_handle_connection() now returns an integer. There was no return value before, which was causing TCP/IP connections to immediately close in an undefined manner. 2015-01-19 10:10:52 -07:00
David Henningsson
d519d93285 file renderer: Add encoding quality API
Based on a patch by willem179@users.sf.net.

Signed-off-by: David Henningsson <diwic@ubuntu.com>
2014-11-05 13:26:19 +01:00
Surabhi
4bbc44d22b Fix resource leak in error path of function sfload_file() 2014-09-25 13:39:55 +02:00
Surabhi
3e08eaea00 Add IPv6 support to socket APIs 2014-07-04 12:48:08 +02:00
Surabhi Mishra
380fd258d7 Fix dereference of voice->sample before NULL check
Signed-off-by: David Henningsson <diwic@ubuntu.com>
2014-07-01 14:40:01 +02:00
David Henningsson
ee54995fab GCC: Stop exporting symbols which should not be exported
Previously, functions that were just used internally in FluidSynth
were still visible to users of the library. No application should
ever use them anyway, as they were only visible at the ABI level,
and not listed in the public API headers.

The big question here is whether this requires a major library bump. I've been
trying to inform myself by looking around the Internet but I haven't come to a
conclusion. E g, the libtool manual just says "interfaces" without specifying
whether they mean API or ABI.

From a pragmatic standpoint, I'm leaning towards *not* bumping the major
library version, because doing so is a major pain for Linux distributions:
they will have to make one "libfluidsynth1" and one "libfluidsynth2"
package, and in turn update everything using that library to depend on
libfluidsynth2 instead of libfluidsynth1.

Sure, there is a risk that some software out there is using one of these hidden
symbols. But I'd say that risk is quite low. And if they are, they're broken
anyway.

In short, I prefer being nice to our downstreams, over being nice to terribly
broken hacky applications that probably don't even exist.

Signed-off-by: David Henningsson <diwic@ubuntu.com>
2014-06-22 05:52:21 +02:00
KO Myung-Hun
f10478b30b Set output name correctly for OS/2
OS/2 has a DLL name length limit up to 8 characters.
2014-03-18 14:18:01 +01:00
KO Myung-Hun
c6b81a4041 Fix header check for DART 2014-03-18 14:17:58 +01:00
David Henningsson
157368662b Fix default soundfont on Windows
Reported by Bernd Casper.
2014-03-09 11:49:58 +00:00
David Henningsson
d09c98dfde Fix compilation under old glib
Reported by Bernd Casper.
2014-03-02 20:27:48 +00:00
Element Green
8ab1a20bc4 Added NEW_GLIB_THREAD_API and OLD_GLIB_THREAD_API macros to test Glib thread API pre or post version 2.32.
Separate thread primative defines in utils/fluid_sys.h for new and old Glib thread API.
g_atomic_int_add is now used in place of depricated g_atomic_int_exchange_and_add if Glib >= 2.30.
Added name field to new_fluid_thread() function for setting the thread name and updated all uses of this function.
new_fluid_thread updated to use new Glib thread API.
Removed notify parameter from fluid_private_set() since it wasn't being used and complicates things with the new Glib thread API.
2013-08-19 23:10:43 +00:00
David Henningsson
b65ae14ccf Fix two more segfaults in error paths
Patch credit: surabhi-mishra
2013-08-09 14:48:46 +00:00
David Henningsson
2f6aa0e9e6 Fix segfault / memory leak in error paths
Patch credit: surabhi-mishra
2013-08-09 14:43:30 +00:00
David Henningsson
d7d7fb1103 midifile loader: Fix memory leaks in error paths (#120)
Patch credit: surabhi-mishra
2013-08-02 13:29:34 +00:00
David Henningsson
aa4d7b06df ramsfont: Fix memory leaks in error paths
patch credit: surabhi-mishra
2013-07-17 11:28:48 +00:00
David Henningsson
ccb2875503 defsfont: Fix memory leaks in error paths
Patch credit: surabhi-mishra
2013-07-17 07:56:21 +00:00
David Henningsson
89898893b1 Fix dereference before NULL check in defsfont/ramsfont (ticket #117)
Patch credit: surabhi-mishra
2013-07-16 10:46:55 +00:00
David Henningsson
862314c134 Protect against empty names in fluid_settings functions
Reference: http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/2013-June/033095.html
2013-06-27 06:50:58 +00:00
David Henningsson
7f9ef99f8b rtkit: Fixup the previous patch
Make it build on Solaris, second time around.
2013-05-28 12:58:10 +00:00
David Henningsson
76da410fe2 rtkit: Fix build on solaris
Reported by Laurent Blume.
2013-05-28 10:47:55 +00:00
David Henningsson
09f8a4777e rvoice mixer: Fix memory leak 2013-05-12 10:21:46 +00:00
David Henningsson
822ffbb4ab defsfont: Avoid memory allocation on program change
This memory allocation can be avoided by preallocating one preset
per midi channel (every midi channel only has one current preset).
2013-05-12 10:21:43 +00:00
David Henningsson
36e8257065 Load default soundfont if midi files specified but no soundfont
It makes little sense to play midi files without a soundfont, so
try to load the default one in that use case.
2013-05-05 09:12:18 +00:00
David Henningsson
fda26d6b24 Add default soundfont setting: synth.default-soundfont 2013-05-05 09:12:14 +00:00
David Henningsson
ea6d033598 chorus level: Probably > 1 is not unreasonable if the default is 2. 2012-12-27 10:07:42 +00:00
David Henningsson
ffc49ac408 Fix documentation for fluid_synth_set_chorus (ticket #114) 2012-12-27 09:55:09 +00:00
David Henningsson
41f1fc1920 Actually mlock the right pointer! 2012-12-08 06:36:53 +00:00
David Henningsson
5b2e24a762 Add synth.lock-memory option (possibility to avoid mlock)
Closes ticket #111. Sometimes, e g in a fast-render scenario
or other scenarios where low latency is not important, you can
turn off mlock to reduce memory pressure (and thus allow the soundfont
to swap to disk).
2012-12-08 06:25:21 +00:00
David Henningsson
5f3568deee fluidmax: Fix compilation failure
...by adding new functions to reset reverb and chorus into the engine.
2012-11-18 09:30:46 +00:00
David Henningsson
9fba1fe88a fluidmax: Removed an invalid (non-utf-8) character 2012-11-18 09:30:11 +00:00
David Henningsson
178615c189 Replace bzero with memset
...as memset is more likely to work with all compilers.
2012-10-27 15:25:52 +00:00
David Henningsson
e7e07e17c4 Allow sampledata sharing between different FluidSynth instances
This reduces memory usage if two different FluidSynth instances
both try to load the same soundfont file.

Thanks to Kjetil Matheussen <k.s.matheussen@notam02.no> for the patch.
2012-10-12 08:51:13 +00:00
David Henningsson
05acefb59c Fix a few compiler warnings
Like e g "variable z set but never used".
2012-09-23 09:08:45 +00:00
David Henningsson
3d9f821954 voice: Fix float -> enum conversion warning with GEN_SAMPLEMODE
Closes ticket #108.
2012-09-23 08:52:20 +00:00
David Henningsson
62e375c71c Make cmake default to "RelWithDebInfo" if not specified
Recent releases has "none" target as the default, with is problematic.

Also print the build type.
2012-08-04 16:58:48 +00:00
David Henningsson
9800764026 Fix build with some OSSv4 variant
Reported by S Christian Collins.
2012-07-30 21:58:35 +00:00
David Henningsson
e70f2a65ee Credit Matt Giuca in AUTHORS file 2012-07-30 07:14:53 +00:00
David Henningsson
85e73665b7 Prepare for 1.1.6 (rc1) release 2012-07-29 04:10:07 +00:00
David Henningsson
52c8821294 rtkit: Prevent libdbus crash 2012-03-25 07:59:23 +00:00
Pedro Lopez-Cabanillas
fb923cebe1 Install fluidsynth.pc (pkg-config spec) also in Windows. Closes ticket #102 2012-03-11 12:47:52 +00:00
Pedro Lopez-Cabanillas
0fce00d396 Detect the header <getopt.h> in cmake, enabling the GETOPT_SUPPORT definition that allows the CLI fluidsynth program to use its features (like long arguments) when it is available, for instance in Windows/MinGW. 2012-03-11 11:49:49 +00:00
Pedro Lopez-Cabanillas
6a9b5507e2 fix for ticket #105 - compiling in Mac OSX Lion, patch by TwoBits 2012-03-10 09:45:45 +00:00
David Henningsson
d69eab9d11 Documentation error: changed "fluid_synth_setint" to "fluid_settings_setint" 2011-12-18 04:44:14 +00:00
David Henningsson
15e6508ffd Handle MIDI End of track events (Credit: Matt Giuca). Fixes ticket #101. 2011-09-18 10:51:54 +00:00
David Henningsson
8791c115c9 Initialize overflow_rvoice correctly 2011-09-11 04:01:53 +00:00
David Henningsson
ab62544737 Prepare for 1.1.5 release 2011-09-04 07:30:52 +00:00
David Henningsson
904ebbe91b Jack: change free to jack_free
Reported by Graham Goode. Fixes crashes on the Windows platform.
2011-08-24 09:25:43 +00:00