Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-08-03 | Update libardour GPL boilerplate and (C) from git log | Robin Gareus | |
2017-10-20 | Prevent recursive VCA assignments | Robin Gareus | |
The GUI so far only prevents direct connections VCA 1 > VCA 2 > VCA 1, but does not recurse VCA 1 > VCA 2 > VCA 3 > VCA 1 | |||
2017-06-22 | Update Slavable API | Robin 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-10 | Restore VCA Automation state | Robin Gareus | |
2017-06-09 | Fix deletion of VCA with slaved controls. | Robin Gareus | |
The crashed previously because: A VCA is-a Automatable is-a Evoral::ControlSet After VCA's d'tor completes ~Automatable runs and emits signal to DropReferences of all master-controls. This in turn calls SlavableAutomationControl::master_going_away() for slaved parameters for the given master-control In ::master_going_away() the weak-pointer reference to the master's AutomationControl (owned by the destroyed VCA) is still valid. Execution is in the d'tor of Automatable which is-a ControlSet and the ContolSet keeps a reference to the Control and hence also to the AutomationControl which is-a Evoral::Control. So master_going_away() locks a boost::shared_ptr<ARDOUR::AutomationControl> which is actually the MuteControl owned by the VCA. It calls SlavableAutomationControl::remove_master() which in turn calls MuteControl::pre_remove_master() which uses the MuteMaster API to retrieve the value. The MuteMaster however is the VCA that has just been destroyed. The solution is twofold: 1) emit "drop_references" from the VCA d'tor itself, before the VCA is destroyed. 2) disconnect a slaved control from the master's drop_references signal when un-assigning a master-control. | |||
2017-05-05 | libardour now has CoreSelection object to manage selection status of ↵ | Paul Davis | |
Stripables and AutomationControls | |||
2017-04-19 | Use XMLNode::get/set_property API in ARDOUR::VCA class | Tim Mayberry | |
2017-01-28 | add VCA::full_name() which returns "VCA %n" : VCA %n" by default and "VCA %n ↵ | Paul Davis | |
: user-provided-name" if the name has been set | |||
2016-07-14 | enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h | Paul Davis | |
2016-07-08 | change VCA number to signed. | Paul Davis | |
Allows for more robust out-of-band (negative) value | |||
2016-06-05 | extensive changes to PresentationInfo API | Paul Davis | |
Now handles color, partially. | |||
2016-05-31 | use new record safe control in libardour | Paul Davis | |
2016-05-31 | VCA: fix numbering scheme to allow contiguous numbers after removing the ↵ | Paul Davis | |
last VCA; remove unnecessary remote_control_id() method | |||
2016-05-31 | add slaved_to() and slaved() methods to VCA | Paul Davis | |
2016-05-31 | first vaguely working version using PresentationInfo | Paul Davis | |
remote control ID and "order keys" have been removed. | |||
2016-05-31 | API and implementation tweaks for destroying VCAs | Paul Davis | |
2016-05-31 | rearrange inheritance so that Automatable IS-A Slavable | Paul Davis | |
Share assign code via Slavable; add visibility tags to Slavable+SlavableAutomationControl | |||
2016-05-31 | generalize VCA assign/unassign code. | Paul Davis | |
Need to share this approach across Slavables | |||
2016-05-31 | add rec-enable and monitor controls to VCAs | Paul Davis | |
2016-05-31 | save and restore vca assignments | Paul Davis | |
2016-05-31 | add Slavable API for VCA assign/unassign | Paul Davis | |
2016-05-31 | clear all solo state should affect VCAs too | Paul Davis | |
2016-05-31 | move ever close to working master/slave logic, this time with audio testing | Paul Davis | |
2016-05-31 | a slew of as-yet incomplete work to get VCA solo+mute closer to working | Paul Davis | |
2016-05-31 | universal change in the design of the way Route/Track controls are designed ↵ | Paul Davis | |
and used. The controls now own their own state, rather than proxy for state in their owners. Massive changes all over the code to accomodate this. Many things are not finished. Consider this a backup safety commit | |||
2016-05-31 | add implicit mute state to MuteMaster and use when a master of a mute ↵ | Paul Davis | |
control is enabled/disabled. Add AutomationControl::master_changed() as a virtual method to handle ... master value changes | |||
2016-05-31 | Session API changes to enable VCAs to set soloed-by-upstream on assigned routes | Paul Davis | |
2016-05-31 | move vca assignment up to the Route level (from GainControl) | Paul Davis | |
2016-05-31 | don't increment actual VCA counter when saving session state | Paul Davis | |
2016-05-31 | save+restore VCA counter value across instances | Paul Davis | |
2016-05-31 | VCA solo and mute controls need to call AutomationControl::set_value() to ↵ | Paul Davis | |
emit a signal | |||
2016-05-31 | redesign Route and VCA objects to inherit from ARDOUR::Stripable | Paul Davis | |
2016-05-31 | fix ambiguity in VCA constructors | Paul Davis | |
2016-05-31 | add solo/mute logic to VCA masters | Paul Davis | |
2016-05-31 | change API for GainControl, VCA and VCAManager | Paul Davis | |
This allows sane state save/restore | |||
2016-05-31 | mostly restore VCA state on session loading. | Paul Davis | |
This does not restore VCA assignments | |||
2016-05-31 | add a bit of state to VCAs | Paul Davis | |
2016-05-31 | expand and improve VCA API | Paul Davis | |
2016-05-31 | change VCA model to facilitate Harrison *and* SSL designs | Paul Davis | |
2016-05-31 | add name() method to VCA | Paul Davis | |
2016-05-31 | initially pass at libardour VCA implementation | Paul Davis | |