summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/send.h
AgeCommit message (Collapse)Author
2016-06-25major internal plugin & processor API change:Robin Gareus
Pass current (latency compensated) cycle times to plugin. This fixes time-reporting to plugins and also fixes automation and when bouncing (the session->transport* is not valid) etc.
2016-05-31Add PanControllable::get_user_string() (provide indirect access to ↵Paul Davis
Panner::value_as_string(); make ::get_user_string() use a const arg everywhere
2016-04-17add self-removing Sends (remove on disconnect)Robin Gareus
The idea is to dynamically add/remove sends for feeding a sidechain and re-use all existing "External Send" infrastructure in particular latency compensation.
2016-01-25change exposed type of various objects' gain controls; remove Amp::gain() as ↵Paul Davis
a shortcut
2016-01-18change ownership of the AutomationControl used by Amp.Paul Davis
It used to be owned by Amp. Now it is owned by Amp's owner
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-09-16Revert "add an Amp to Delivery, remove it from Send, make use of this in ↵Paul Davis
various ::run() methods" This reverts commit 601a34521c2ce1d0167ed2f3c66f2fa6eeeb6b8e.
2015-09-15add an Amp to Delivery, remove it from Send, make use of this in various ↵Paul Davis
::run() methods Delivery::_amp now will handle monitor-related delicks assuming the Session::config.get_use_monitor_fades() is true.
2014-06-11basic integration of delaylines (still un-nused)Robin Gareus
2014-01-23fix merge conflict with masterPaul Davis
2014-01-22fix bitslot already in use warningRobin Gareus
in e45151b89c64 route.cc was changed to create internal sends directly with role = Delivery::Aux; and not Delivery::Role (0). This change was motivated to initialize the panner for Aux-sends in the Delivery. Role(0) was used to override bitslot numbering during initial construction of the object when the state is loaded from XML after construction. This patch adds an explicit flag for that. (The previous Role(0) approach only worked for Aux-Sends but not Sends, anyway.)
2014-01-13fix output metering for Sends (Aux and External)Robin Gareus
2014-01-13fix output metering for Sends (Aux and External)Robin Gareus
2013-10-17add export visibility macros across libardourPaul Davis
2013-08-02rework MIDI [processor|plugin] chainRobin Gareus
* forward midi-data around plugins that have no MIDI-out * allow to insert plugins with no MIDI-input at a point with one MIDI-channel This works because excess ports (both plugin and route) remain unconnected and use scratch-buffers. Tested with LV2, LXVST and LADSPA. (AU plugins with variable in/out retain the old behavior, no bypass) fixes http://tracker.ardour.org/view.php?id=5630
2012-03-15better, cleaner fix for copying sends/returns/port inserts via XML statePaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@11691 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-13redesign how XML state, bitslots and names get propagated during copying a ↵Paul Davis
send/port insert/return git-svn-id: svn://localhost/ardour2/branches/3.0@11669 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-28Use dBs for send gain automation controls too.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@11539 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-18fix two major assert failures arising from the optional monitor section ↵Paul Davis
commit; separate numbering of aux sends, sends and listens to fix #3671 (still testing, but the assert failures are critical) git-svn-id: svn://localhost/ardour2/branches/3.0@11263 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-28Improve audioengine includes slightly.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@10326 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-27merge 3.0-panexp (pan experiments) branch, revisions 8534-8585 into 3.0, ↵Paul Davis
thus ending 3.0-panexp. THIS COMMIT WILL BREAK ALL EXISTING 3.0 SESSIONS IN SOME WAY (possibly not fatally). git-svn-id: svn://localhost/ardour2/branches/3.0@8586 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-03Remove all use of nframes_t.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8166 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-20Save/restore aux send levels. Fixes #3546.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8061 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-03Fix restore of sends from session files for both 2.X and 3.0 sessions. ↵Carl Hetherington
Fixes #3433. git-svn-id: svn://localhost/ardour2/branches/3.0@7739 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-19forward port automation handling changes from 2.x, upto and including about ↵Paul Davis
rev 6981 (will need full testing in the 3.X context). as on 2.x, this removes real-time visual updates to automation curves during write/touch automation recording git-svn-id: svn://localhost/ardour2/branches/3.0@7653 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-01revisit setting up processors during route construction; remove several more ↵Paul Davis
XML-based constructors; don't put () parens around inactive plugin names (we have a checkbox); improve management of send, return and insert bitslot IDs; clean up Diskstream construction a bit more git-svn-id: svn://localhost/ardour2/branches/3.0@6819 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17switch to using boost::signals2 instead of sigc++, at least for libardour. ↵Paul Davis
not finished yet, but compiles, loads sessions, records and can close a session without a crash git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-25Give Processor::run a new parameter to say whether or not the run method ↵Carl Hetherington
must leave the passed-in buffers valid. In the case where the main outs delivery is the last processor in a route, this is not necessary (and wasteful). If another processor (e.g. a meter) follows the main outs, the passed-in (scratch) buffers must be valid or the meter will get garbage data. Fixes meters displaying phantom signals in some cases. git-svn-id: svn://localhost/ardour2/branches/3.0@6180 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18add "custom" meter option which is the only option where the meter processor ↵Paul Davis
is visible in the UI; hide main outs always git-svn-id: svn://localhost/ardour2/branches/3.0@6126 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15rework Stateful::set_state() patch to avoid default version argumentPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@5787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15Part 1 of loading 2.X sessions; some things work, some things don't, hacks ↵Carl Hetherington
a-plenty. LOADING 2.X SESSIONS WITH THIS COMMIT IN PLACE WILL (PROBABLY) CORRUPT THE .ardour FILE, MAKING THE SESSION UNLOADABLE ON 2.X AND LOSING INFORMATION. So don't do that unless you make a backup of the session file first. git-svn-id: svn://localhost/ardour2/branches/3.0@5786 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14Strip trailing whitespace and fix other whitespace errors (e.g. space/tab ↵David Robillard
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-07-21first part of fixing up send/return metering ; make send-controlling faders ↵Paul Davis
work ; fixes from 2.X for key editor and untranslatable string; use standard name for surfaces lib version in wiimote wscript git-svn-id: svn://localhost/ardour2/branches/3.0@5400 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-15processor naming tweaks, processor visibility tweaks and more, trying to ↵Paul Davis
finish this audio routing thing... git-svn-id: svn://localhost/ardour2/branches/3.0@5364 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-16first pass (ok, third really) at internal send+return - audio routing inside ↵Paul Davis
ardour without JACK. lots still to do, but at least the obvious works git-svn-id: svn://localhost/ardour2/branches/3.0@5202 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-10nick m's fix for markers etc ; several tweaks for mute/solo ; rename ↵Paul Davis
run_in_place() as run() git-svn-id: svn://localhost/ardour2/branches/3.0@5155 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-09the big Route structure refactor. !!!! THIS WILL ***NOT LOAD*** PRIOR 3.0 ↵Paul Davis
or 2.X SESSIONS !!!! BREAKAGE IS EXPECTED !!!! IF YOU HAVE AND NEED A WORKING 3.0 DO **NOT** UPDATE. !!!! otherwise, update and enjoy the steadily emerging joys of this major reworking of ardour internals git-svn-id: svn://localhost/ardour2/branches/3.0@5137 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-17Das BlinkenSendButtonsPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@5097 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-13more work on the new all-Processor-all-The-Time redesign of Route - LOTS OF ↵Paul Davis
BREAKAGE STILL EXPECTED ; change all(?) methods that pass a start/end frame in to use sframes_t not nframes_t git-svn-id: svn://localhost/ardour2/branches/3.0@5074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-07Returns (i.e. sidechains).David Robillard
And lo, upon the revision of our hoarde 5061, was the last Big Feature committed to Three Poino, who, now more than ever, lurks imposingly on the sidelines, heir to the throne, and eventual ruler of the realm. His eventual succession all but guaranteed, only time and the number of heads that must roll remain mysteries. git-svn-id: svn://localhost/ardour2/branches/3.0@5061 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-07The great audio processing overhaul.David Robillard
The vast majority of Route signal processing is now simply in the list of processors. There are definitely regressions here, but there's also a lot of things fixed. It's far too much work to let diverge anymore regardless, so here it is. The basic model is: A route has a fixed set of input channels (matching its JACK input ports and diskstream). The first processor takes this as input. The next processor is configured using the first processor's output as input, and is allowed to choose whatever output it wants given that input... and so on, and so on. Finally, the last processor's requested output is used to set up the panner and create whatever Jack ports are needed to output the data. All 'special' internal processors (meter, fader, amp, insert, send) are currently transparent: they read any input, and return the same set of channels back (unmodified, except for amp). User visible changes: * LV2 Instrument support (tracks with both MIDI and audio channels) * MIDI in/out plugin support * Generic plugin replication (for MIDI plugins, MIDI/audio plugins) * Movable meter point Known Bugs: * Things seem to get weird on loaded sessions * Output delivery is sketchy * 2.0 session loading was probably already broken... but it's definitely broken now :) Please test this and file bugs if you have any time... git-svn-id: svn://localhost/ardour2/branches/3.0@5055 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-23remove offset from process callback tree. some breakage may have occured. ↵Paul Davis
yes, really. git-svn-id: svn://localhost/ardour2/branches/3.0@4999 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25*** NEW CODING POLICY ***David Robillard
All #include statements that include a header that is a part of a library bundled with ardour MUST use quotes, not angle brackets. Do this: #include "ardour/types.h" NOT this: #include <ardour/types.h> Rationale: This is best practice in general, to ensure we include the local version and not the system version. That quotes mean "local" (in some sense) and angle brackets mean "system" (in some sense) is a ubiquitous convention and IIRC right in the C spec somewhere. More pragmatically, this is required by (my) waf (stuff) for dependencies to work correctly. That is: !!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!! Failure to comply is punishable by death by torture. :) P.S. It's not that dramatic in all cases, but this (in combination with some GCC flags specific to the include type) is the best way I have found to be absolutely 100% positive the local ones are being used (and we definitely want to be absolutely 100% positive on that one). git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14Make DnD copy processors using their XML representations. Remove unusedCarl Hetherington
copy constructors from the Processor hierarchy, and declare them private to explicitly disallow copy construction. git-svn-id: svn://localhost/ardour2/branches/3.0@4556 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14Fix send copying by paste and drag n drop.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@4550 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-30Trim include dependency graph, especially for io.h and session.h.David Robillard
Clean up some stuff and other such gruntwork in the process. git-svn-id: svn://localhost/ardour2/branches/3.0@4468 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-10merge from 2.0-ongoing @ 3581Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3711 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02rollback to 3428, before the mysterious removal of libs/* at 3431/3432Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3435 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02remove empty sigc++2 directoryDoug McLain
git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-11click reset error fixed, plus some older work on sends+panners i/o countsPaul Davis
git-svn-id: svn://localhost/ardour2/trunk@2456 d708f5d6-7413-0410-9779-e7cbd77b26cf