Commit graph

63 commits

Author SHA1 Message Date
Marcus Weseloh
9dc7a4e52c Merge branch 'master' into ladspa 2017-11-13 22:30:41 +01:00
derselbst
c7a02bd812 make fluid_settings_foreach_t const correct 2017-11-11 11:09:17 +01:00
derselbst
12a9692211 make fluid_settings_foreach_option_t const correct 2017-11-11 11:04:12 +01:00
Marcus Weseloh
007cd2b5fc Merge branch 'master' into ladspa
Resolve conflicts in:
	src/bindings/fluid_ladspa.c
2017-11-10 19:36:30 +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
Marcus Weseloh
9f6ef4e67e Cleanup API and docs
- Rename functions to clarify purpose
- Group functions in header by purpose
- Cleanup doc comments
- Remove unused members from structs
2017-11-07 23:49:57 +01:00
Marcus Weseloh
be38fa98e3 Cleanup ladspa commands and add more comments
Remove the <effect name>:<port name> syntax for ladspa_link again,
better to have them as two separate arguments. Also remove the
<lib name>:<plugin label> syntax, use separate args where as well.
2017-11-07 23:49:57 +01:00
Marcus Weseloh
61ea5e19db Remove the node concept completely from LADSPA api 2017-11-07 23:49:57 +01:00
Marcus Weseloh
9af97fb02b Add note that LADSPA doesn't need very long command lines anymore 2017-11-07 23:49:57 +01:00
Marcus Weseloh
0b263175d3 Rename "plugin" to "effect" where it's used to mean "plugin instance" 2017-11-07 23:49:57 +01:00
Marcus Weseloh
4212dd04f7 Smaller cleanups for fluid_cmd 2017-11-07 23:49:57 +01:00
Marcus Weseloh
fa0b210233 Rename function to set effect control port value 2017-11-07 23:49:57 +01:00
Marcus Weseloh
bcf711f51a Rename check for effect port existance 2017-11-07 23:49:57 +01:00
Marcus Weseloh
e0463843fa Rename ladspa_node to ladspa_buffer
Users don't need to create control nodes anymore
2017-11-07 23:49:57 +01:00
Marcus Weseloh
026bcbcc78 Create control nodes automatically and use better interface to set value
Removes ladspa_control_defaults and ladspa_control in favour of the new
ladspa_set. Nodes for all effect controls are created when the effect
is instantiated.
2017-11-07 23:49:57 +01:00
Marcus Weseloh
ea9c868c86 Make plugin label optional when creating effect 2017-11-07 23:49:57 +01:00
Marcus Weseloh
a4312c65ed Remove explicit direction from ladspa_link and fluid_ladspa_connect 2017-11-07 23:49:57 +01:00
Marcus Weseloh
1684427c33 Rename ladspa_port to ladspa_link 2017-11-07 23:49:57 +01:00
Marcus Weseloh
55cd5040a7 Allow port names in fluid_port to be specified as one argument 2017-11-07 23:49:57 +01:00
Marcus Weseloh
5aecf97097 Rename command ladspa_plugin to ladspa_effect, remove ladspa_mode 2017-11-07 23:49:57 +01:00
Marcus Weseloh
6eb8212723 Add consistent checking for inactive ladspa in fluid commands 2017-11-07 23:49:57 +01:00
Marcus Weseloh
5b4ad47bee Effects (plugin instances) identified by name instead of unique id 2017-11-07 23:49:57 +01:00
Marcus Weseloh
e77e702b16 Add support for run_adding mode of plugins and in-place rendering
In-place rendering is implemented in such a way that there is no
change in behaviour if it is enabled or not. So there's no need
for a user setting.

Run adding mode is a LADSPA feature that plugins can support. Using
that mode, they don't replace an output buffer, but add their rendered
audio to it (with a user definable gain). A very necessary feature to
be able to use a LADSPA reverb in place of the internal reverb.
2017-11-07 23:49:57 +01:00
carlo-bramini
cb4f1d389d No need to read-modify-write, just set errors to TRUE 2017-11-04 13:07:18 +01:00
derselbst
bf978e2b6b even more destructor refactor 2017-10-30 11:28:08 +01:00
derselbst
2b882c2877 fix build 2017-10-28 14:19:20 +02:00
derselbst
6dfd736460 refactor return values in fluid_cmd.c
consistently return FLUID_OK or FLUID_FAILED for shell command handlers
2017-10-28 14:02:44 +02:00
derselbst
0ef6da7740 minor clarification 2017-10-28 13:50:13 +02:00
derselbst
642b9750b2 remove unimplemented fluid_handle_mstat() 2017-10-28 13:31:10 +02:00
derselbst
634c07ed45 remove error hiding casts in fluid_commands[] 2017-10-28 13:30:35 +02:00
derselbst
1eb6aa97f3 avoid using deprecated tuning functions 2017-10-27 16:59:20 +02:00
Philippe Simons
cdd9f75112 thread function return type (#254)
typedef the return value of thread starting routines, as suggested by @loki666
2017-10-26 18:08:10 +02:00
derselbst
a1810385e1 Merge branch 'carlo-bramini-misc-fixes-1' 2017-10-25 17:52:17 +02:00
carlo-bramini
96f0f5fe88 Use _close() on _WIN32 2017-10-24 20:25:58 +02:00
derselbst
168274fbbd fix build 2017-10-23 12:43:07 +02:00
R. Mattes
afe915dab2 Fixed dumptuning 2017-10-22 21:36:25 +02:00
carlo-bramini
e1c3b46ee2 Fix an handle leak 2017-10-22 19:13:16 +02:00
R. Mattes
38758c78dd Fixed nasty loop test 2017-10-22 18:47:00 +02:00
Marcus Weseloh
4d256ce8cc Add new command to FluidSynth shell to set control ports to default value 2017-10-21 19:49:49 +02:00
Tom M
c594bdf466 Merge branch 'master' into fluidsynth-on-mcu-1 2017-10-21 17:38:54 +02:00
Tom M
0600ba7c68 Merge pull request #235 from mawe42/ladspa-cleanup
LADSPA effect unit refactor
2017-10-21 17:36:04 +02:00
Marcus Weseloh
885178ef9d Replace timeout in deactivate with mutex and cond. 2017-10-21 16:32:04 +02:00
Marcus Weseloh
2c7e1696fd Completely decouple LADSPA engine from FluidSynth
Knowledge of FluidSynth is completely removed from the LADSPA effects
unit. All synchronization happens inside LADSPA with atomic operations.
The LADSPA fx instance created by FluidSynth is only special in that
FluidSynth knows about it and calls it's run method when enabled.

This simplifies the code structure, makes the FluidSynth and the LADSPA
engine easier to maintain due to the loose coupling. It also enables
users to create their own (or additional) LADSPA fx unit for further
processing as soon as we expose the LADSPA functions via a public API.
2017-10-21 15:07:39 +02:00
derselbst
36f7cc1b21 avoid garbage value for client->handler 2017-10-21 13:04:09 +02:00
carlo-bramini
152fb395f5 Optimized fluid_commands[] 2017-10-21 12:38:44 +02:00
Marcus Weseloh
4120b2320f Major refactor and rewrite of the LADSPA effects engine. 2017-10-19 23:31:05 +02:00
carlo-bramini
9321dda281 Use FLUID_SNPRINTF into all remaining files 2017-10-15 18:42:44 +02:00
derselbst
820448bafe fix memory leak in fluid_client_t
let each fluid_client_t own its fluid_cmd_handler_t and delete it properly
2017-10-11 10:51:59 +02:00
derselbst
360ae04135 update API doc 2017-10-07 15:21:38 +02:00
derselbst
86a19090eb remove unneeded fluid_server_newclient_func_t 2017-10-07 15:06:06 +02:00