summaryrefslogtreecommitdiff
path: root/libs/ardour/route.cc
AgeCommit message (Collapse)Author
2017-09-18NO-OP: mark various state property names as explicitly non-translatedPaul Davis
2017-09-18move disk_{writer,reader} into Route to allow for simple, sensible ↵Paul Davis
implementation of DiskIOPoint
2017-09-18auditioner always runs at normal speed, independent of transport speedPaul Davis
2017-09-18mechanism to allow Track (or other Route-derived type) to add its own ↵Paul Davis
processors at the right time
2017-09-18initial (incomplete) framework for DiskIOPoint manipulationPaul Davis
2017-09-18set + store signal chain latency for all processors; DiskWriter sets its ↵Paul Davis
capture_offset appropriately
2017-09-18cue monitoring for audio (libardour aspects)Paul Davis
2017-09-18get diskreader working, and remove per-track varispeed API and mechanismPaul Davis
2017-09-09Fix signal-emission order (first re/set instrument info)Robin Gareus
2017-09-09Prepare for singleton patch-selector per midi-track UI (mixer, editor,..)Robin Gareus
2017-08-20Remove the template description XMLNode before saving the templateJohannes Mueller
... to avoid that the new template description is concatenated to the old one.
2017-08-20Let user add a route template description on saving route templatesJohannes Mueller
2017-07-24fix e838e7f3597Robin Gareus
2017-07-24Fix Mixbus "well known" send-names and enable ctrlsRobin Gareus
2017-07-22Fix Route mute automation touch (owned control)Robin Gareus
2017-07-22NO-OP: consistent [internal] API name for AutomatablesRobin Gareus
2017-07-22NO-OP: Consistent API nameRobin Gareus
2017-07-20Set the name of the route in a route template to the template nameJohannes Mueller
2017-07-20Allow adding tracks w/o running backendRobin Gareus
2017-07-19Fix well-known send API for mixbusses.Robin Gareus
2017-07-16Consistent Automation evaluation:Robin Gareus
Rule #89: The *owner* of each automation-control is responsible to evaluate automation of automated automation-controls (and emit Changed() signals to notify the GUI and slaved controls). This can happen during run(), when the Processor evaluates automation (eg. PluginInsert does that), but needs to regardless, every cycle. Emit Changed signal for GainControl This follow the same concept as PluginInsert: The Changed signal is called on demand when evaluating automation.
2017-07-07Don't drop processor references with process-lockRobin Gareus
_processors = new_list; may drop the last shared-ptr reference. This may deadlock in ~IO() for I/O processors or plugins with sidechain inputs. It's been mostly a non-issues since the GUI usually holds a last shared-ptr reference for a processor to be deleted, but that is not always the case.
2017-06-22Update Slavable APIRobin Gareus
Do not use AutomationType to identify parameters, use complete Evoral::Parameter and Automatable. For "batch connections", a Slavables needs to implement an API to return the relevant controls. This is only a first step towards a more generic Master/Slave framework.
2017-06-22Remove locale_guard.h from ardour/ardour.h headerTim Mayberry
Add to source files that use LocaleGuard Results in far less recompiling when pbd/locale_guard.h changes
2017-06-22Remove LocaleGuard from ARDOUR::Route classTim Mayberry
Route and all members are now using locale independent string <=> float conversions.
2017-06-21Fix duplicate Gain+Trim AutomationLists in session file.Robin Gareus
2017-05-14Sanitize "well-known" ctrl APIRobin Gareus
2017-05-13Fix copy+paste error for mb32c filter freq.Ben Loftis
2017-05-13amend efc2660f, well-known stripable controls:Robin Gareus
* consistent hpf/lpf controllables (actually hi/lo bell in 32C) * HPT, LPF frequencies are exposed as EQ band * don't expose filter ctrl for mixbuses/master
2017-05-12MCP: Mixbus32C: Restore missing filter controls to the Dyn page.Ben Loftis
2017-05-10Selection::get_stripables() needs to recurse into an Automatable's child ↵Paul Davis
Automatables when looking for for an Automation Control It also needs renaming (to come)
2017-05-05libardour now has CoreSelection object to manage selection status of ↵Paul Davis
Stripables and AutomationControls
2017-04-19Use std::string::operator+() instead of string_compose template in Route classTim Mayberry
Using string_compose in this instance doesn't seem necessary, is worse in terms of readability and is no doubt slower.
2017-04-19Use PBD::string_to<bool> in legacy ARDOUR::Route methodsTim Mayberry
2017-04-19Use XMLNode::get/set_property in ARDOUR::Route classTim Mayberry
2017-04-19Use ID::to_s() in libardour instead of ID::print()Tim Mayberry
2017-04-17Only check active_state when potentially skipping the route processing.Ben Loftis
In the past, we skipped processing if the routes had no inputs or outputs. But: A route with a generator plugin should work even if it has no inputs. A route with "sends" should work even if it has no outputs.
2017-04-17Flush processor (re-activate) on route active changeRobin Gareus
(flush reverb tails etc) PS. That comment "from RT audio thread" was wrong. Route::flush_processors () is called from flush_all_inserts() from Session::non_realtime_stop() which is not in rt-context. Besides, the processor-lock regardless of the process_lock.
2017-04-17amend 649b9e92f, backport MB codeRobin Gareus
2017-04-17Backport some MB specifics (to avoid -Wmisleading-indentation)Robin Gareus
2017-04-17Update well-known controls (Ardour, Mixbus, 32C)Robin Gareus
2017-04-14Exclude MB EQ/Comp from visible processors de/activate.Robin Gareus
2017-04-14Don't A/B en/disable invisible processors, nor MB channelstripRobin Gareus
2017-04-14Convert polarity-invert from older session-formatsRobin Gareus
2017-04-12Properly expose "well known" comp_redux output.Robin Gareus
2017-04-12fix mb32 well-known EQ (4 bands, different ports)Robin Gareus
2017-03-13Add track/bus rename safeguards to the backend (handy for scripting)Robin Gareus
2017-03-01Fix crash when adding a plugin immediately after re-order (via script)Robin Gareus
The re-order is queued to be performed click-free in realtime-context. Meanwhile adding plugins will result in a race-condition.
2017-02-07remove debug outputPaul Davis
2017-02-07only reverse propagate solo-by-others-downstream if connections on a Route ↵Paul Davis
change, not just configuration changes. This prevents a scenario where the route has had its solo control's state set from XML, but then we configure the route's output, and invoke output_change_handler(). Without the new conditional, this would check which downstream routes are soloed, find none, and then unset the soloed-by-downstream state of the solo control.