Robin Gareus
51385ced3c
Implement Lua DSP processor/plugin
2016-02-23 15:41:08 +01:00
Robin Gareus
0e6f763734
and again.
2016-01-09 01:24:10 +01:00
Robin Gareus
5a047fcd15
fix typo in ce7d18bc16
2016-01-09 01:01:18 +01:00
Robin Gareus
ce7d18bc16
don't allow to delete factory presets
2016-01-09 00:51:24 +01:00
Robin Gareus
b4b0f57c0b
remove default implementation to query plugin-preset names
2016-01-08 11:09:43 +01:00
Robin Gareus
d5dbdc9ea5
Add API to allow querying plugin-presets without instantiating the plugin
2016-01-07 17:23:39 +01:00
Robin Gareus
81a3ae985d
Keep plugin presets in sync across plugin-instances.
2015-12-25 22:38:48 +01:00
Robin Gareus
7a5cea45e1
fix seamless midi-looping - fixes #5438
...
well, now...
- Midi-Ports have a midi-buffer.
- Midi-Tracks have a midi-buffer.
- Midi-tracks have a diskstream.
- Midi-diskstream has a midi-ring-buffer.
- Midi-tracks have a delivery
- The delivery can get a reference to the actual backend-ports
- The delivery calls the Midi-Port's flush() buffer to send out queued events
at the end of a cycle
all clear ? :)
- when splitting the process-cycle: only the Ports are informed.
all other objects see a "normal" short process cycle starting at "0".
The offset needs to be applied early on, so that internally routed buffers
push the event at the correct time when combining the buffer with
immediate and async events.
Luckily Port::port_offset() is a static member, available to all, objects,
which allows to bridge the conceptual gap between the diskstream and
the delivery.
There's a snag:
When there's a note-on directly at the beginning of the loop it coincides
with the panic message sent when looping.
The panic comes before note events, so it *should* be good.
Also the final note-offs (state tracker end of loop/region) are sent
1 sample too early (smells like an off-by-one), and are hence dropped.
(no matter we send a panic right after it).
It should really be at the same time, just before the panic.
2015-11-29 01:27:18 +01:00
Paul Davis
f806f059b3
rename Plugin::ParameterChanged to ParameterChangedExternally to reflect its intent, and clean up the libardour side of result.
...
The signal exists to notify listeners that something outside of the host's control (e.g. a plugin's own GUI for AU or VST)
has modified a plugin parameter. Previous code had strange feedback loops and ambiguous semantics.
2015-10-20 10:23:49 -04:00
Paul Davis
7804a524dc
Revert "rename ParameterChanged signal in Plugin to ParameterChangedExternally to reflect its intent, and clean up the result."
...
This reverts commit 336b2eb9a4 .
2015-10-20 10:23:49 -04:00
Paul Davis
336b2eb9a4
rename ParameterChanged signal in Plugin to ParameterChangedExternally to reflect its intent, and clean up the result.
...
The signal exists to notify listeners that something outside of the host's control (e.g. a plugin's own GUI for AU or VST)
has modified a plugin parameter. Previous code had strange feedback loops and ambiguous semantics.
Significant modification of LV2 GUI updating was required.
Still to be tested for feedback loop issues: AudioUnits
2015-10-20 09:07:58 -04:00
John Emmas
8d46cc99fe
Fix a problem where VST automation data wasn't getting written (if the adjustments were made from the plugin's own controls)
2015-10-14 14:54:27 +01:00
Robin Gareus
22b07e0233
NOOP, remove trailing tabs/whitespace.
2015-10-05 16:17:49 +02:00
Robin Gareus
8e7c065f83
limit plugin-preset ‘seen_set_state’ message.
2015-03-23 01:53:07 +01:00
Ben Loftis
d2fa2450aa
use C locale, because POSIX locale is not supported on windows, and operation is undefined. C works on all platforms
2015-01-19 07:29:25 -06:00
David Robillard
8bba63282a
Reduce unnecessary non-const MIDI buffer access.
2014-11-20 15:32:06 -05:00
John Emmas
d176cbc804
'libs/ardour' - Compiler specific includes and includes
2013-08-04 17:01:37 +01:00
Paul Davis
650964f320
Merge branch 'master' into windows
2013-07-17 08:05:59 -04:00
Paul Davis
332deec155
tweaks to NO_PLUGIN_STATE logic
2013-07-15 20:43:44 -04:00
Paul Davis
742753a996
Don't require liblrdf on windows
...
This removes dependence on liblrdf, libraptor and libxslt
2013-07-11 14:20:02 -04:00
Paul Davis
80a13145f3
Generalize no-plugin-state from AudioUnits to all plugins
...
Replace AU_STATE_SUPPORT compile-time define with NO_PLUGIN_STATE and make it prevent plugin state setting, preset loading, preset saving and plugin state saving. Blocks on these actions exist partially in the backend and partially in the GUI (this latter class are not absolute, and should OSC or MIDI be able to drive Plugin::save_preset() the block could be circumvented). Set NO_PLUGIN_STATE if --freebie is used at waf-configure time
2013-06-13 22:50:54 -04:00
Paul Davis
d89f209f4a
tentative redesign of MIDI looping, will probably fix #5050 but needs more extensive testing; remove several unused parameter names
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13810 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-08 21:36:42 +00:00
Paul Davis
5ce7e740c4
when sending notice of a change in a plugin parameter value, send the current value
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13121 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-09 17:37:23 +00:00
Paul Davis
1df227424a
patch from colinf that adds an 'empty' preset to the preset drop-down list, so that plugins can be set back to the 'no preset' state rather than being stuck in the state of 'preset loaded and modified'. This should apply to all plugin types, though I've only tried it on LV2 and LADSPA.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-19 16:02:24 +00:00
David Robillard
6fa6514cfd
Remove over 500 unnecessary includes (including 54 of session.h).
...
It's slightly possible that this causes trivial build failures on different
configurations, but otherwise shouldn't cause any problems (i.e. no actual
changes other than include/naming/namespace stuff). I deliberately avoided
removing libardour-config.h since this can mysteriously break things, though a
few of those do seem to be unnecessary.
This commit only targets includes of ardour/*.h. There is also a very large
number of unnecessary includes of stuff in gtk2_ardour; tackling that should
also give a big improvement in build time when things are modified.
git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 06:09:29 +00:00
Paul Davis
02ec346c2b
add virtual method is_instrument() to PluginInfo (already existed for AUPluginInfo) and use to determine if plugin is an instrument for the purposes of AddRouteDialog, since the rules are plugin-type specific
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11426 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-02 18:51:32 +00:00
Paul Davis
5558b3cf06
a grab bag of changes correcting and improving the way MIDI note on/off tracking is done. may/should fix a number of problem with spurious note-offs under a variety of circumstances
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 17:01:31 +00:00
Carl Hetherington
d9a3c6b89f
Rename windows VST stuff with a Windows prefix.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10738 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-21 17:42:29 +00:00
Paul Davis
c66955386e
make PluginManager API more in line with other singletons; do initial plugin discovery before beginning to construct the UI, so that if plugins create GUIs (e.g for license verification) they don't cause a run loop to catch the UIManager in an inconsistent state with menus defined but actions missing
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10586 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-14 17:41:29 +00:00
Paul Davis
4aeebb914e
changes for OS X support: change waf config define to COREAUDIO_SUPPORT, remove PluginInsert call to IO::PortCountChanged, remove use of explicit Carbon linkage, fix up AudioUnit internals to actually work (Cocoa GUIs still currently broken)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10224 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-18 15:08:42 +00:00
Paul Davis
0938a42440
fixes for 98% of all the warnings/errors reported by OS X gcc on tiger
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-30 17:55:14 +00:00
Paul Davis
d4433b9ab3
(native) Linux VST support from LinuxDSP
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10101 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-20 20:29:47 +00:00
David Robillard
a473d630eb
Fix broken whitespace. I'd apologize for the compile times if it was my fault :D
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01 16:50:12 +00:00
David Robillard
c78528dcea
Use LV2_SUPPORT define instead of HAVE_SLV2.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9510 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-14 17:59:16 +00:00
Carl Hetherington
42cd22ead4
Set session dirty on plugin parameter changes (rest of #3997 ).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9402 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-21 15:53:59 +00:00
Carl Hetherington
ea11968f95
Clean up and hopefully fix handling of logarithmic plugin parameters ( fixes #3769 ).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8850 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-15 01:42:48 +00:00
Carl Hetherington
fa02a4e61c
Fix plugin parameter updates ( #3636 ).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8370 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-29 21:07:37 +00:00
Carl Hetherington
5f4bdb233a
Clean up plugin preset handling a bit.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8301 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-19 23:11:01 +00:00
Carl Hetherington
a9275f997b
Put plugin-note-off code in the right place.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8207 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07 15:00:19 +00:00
Carl Hetherington
40c162d609
Move RDF-based preset stuff into LadspaPlugin, to make way for a set of evil hacks to make VST chunk-based presets work (for some values of `work').
...
May fix #3577 .
git-svn-id: svn://localhost/ardour2/branches/3.0@8202 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-07 02:56:11 +00:00
Carl Hetherington
3975355a5f
Add dialog to allow removal of plugin presets. Should fix #2662 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8196 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-06 04:29:06 +00:00
Carl Hetherington
5546fa38fc
Manage attempts to save plugin presets with the same name. Helps with #2662 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8191 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-06 02:41:46 +00:00
Paul Davis
b85b4d9e54
make ardour3 build and link on OS X (tiger, at least)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8018 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-13 05:14:48 +00:00
David Robillard
650c6d5824
Fix various code quality issues found by cppcheck (e.g. uninitialized members, larger than necessary variable scope, memory leaks, etc).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6710 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-23 20:25:53 +00:00
Carl Hetherington
e1980eb495
Fix creation of plugin presets.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5836 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 00:21:02 +00:00
David Robillard
bb9cc45cd2
Strip trailing whitespace and fix other whitespace errors (e.g. space/tab mixing). Whitespace changes only.
...
Vimmers, try let c_space_errors = 1 in your .vimrc to highlight this kind of stuff in red. I don't know the emacs equivalent...
git-svn-id: svn://localhost/ardour2/branches/3.0@5773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14 16:10:01 +00:00
Paul Davis
88beef2e93
merge pre- and post-fader processor boxes; start removing Placement (not finished) ; add -DWAF_BUILD and use per-directory foobar-config.h to correctly pick up configure-time settings like HAVE_OGG ; check for libgiomm (part of upgrade to newer gtk stack); 32 bit marker reload fix from 2.X; audiounit IO config cache fix from 2.X; multi-add route template fix from 2.X; plugin GUI delete fix from 2.X; solo button labels are A or P for listen mode
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5344 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-13 00:26:28 +00:00
Carl Hetherington
3b89d9eaa0
Remove most using declarations from header files.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-12 17:03:42 +00:00
Sakari Bergen
e09c51251f
Fix compiler warnings
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4744 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-03-07 09:42:39 +00:00
David Robillard
03536cd399
Fix a bunch of warnings.
...
Clean up.
git-svn-id: svn://localhost/ardour2/branches/3.0@4668 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-26 00:58:35 +00:00