summaryrefslogtreecommitdiff
path: root/libs/ardour
AgeCommit message (Collapse)Author
2017-07-16Rename private methodRobin Gareus
The same name (automation_run) is used in different context (mute) for only processing automation.
2017-07-13Fix total number of process threadsRobin Gareus
2017-07-12Don't try to chop of the file name extension from a template dirJohannes Mueller
Template files reside in .config/ardour5/templates/$(template_name)/$(template_name).template We run through .config/ardour5/templates/ and find there the names of the directories the .template-files are located in. These directory names don't have a .template extension. So we shouldn't try to chop the non existing extension of, because then we only modify template names with a '.' in them.
2017-07-08Don't use VST ->user points, prefer host-reserved ptrRobin Gareus
Apparently "user" is for plugins (not hosts) to use.
2017-07-08Add API to expand/flatten AC groupsRobin Gareus
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-07-07Consistent ControlList freezing -- fixes #7419Robin Gareus
AudioRegion::set_fade_in() freezes the original ControlList, then assigns a new one and thaws that. Frozen state needs to be retained during assignment. Related: The overloaded assignment operator in AutomationList performed duplicate signal emission and didn't freeze the list.
2017-07-06Consistently set parameter steps.Robin Gareus
And it's actually mostly moot. interface_to_internal maps any range to 0..1. The GUI could just hardcode min/max 0, 1 and steps 1/30, 1/300. Except for controls that have explicit range-steps & ctrl surfaces.
2017-07-04Fix session-event queue (multiple writer, single reader)Robin Gareus
The reading is done in rt-process thread, but multiple UIs (surfaces, GUI) can produce events to be queued.
2017-07-04Compatibility with old out-of-range automation-lane dataRobin Gareus
Ardour may have ignored log-scale for parameters 0..N and allowed writing '0'. Force those values into the valid range on session load. Also mark the list as "needs sorting" which removes potential duplicates.
2017-07-04Work-around for plugins with log-scale parameter 0..SR/2Robin Gareus
2017-07-02Add API to step though parameter enumerationsRobin Gareus
2017-07-02Prepare x-thread signals plugin-GUI visibilityRobin Gareus
2017-07-01Remove old libardour API for plugin UIsRobin Gareus
2017-07-01Fix thinko in dd3f922788Robin Gareus
2017-06-30Don't invert azimuth & elevation display valueRobin Gareus
2017-06-30NO-OP: whitespaceRobin Gareus
2017-06-30Remove cruft (ParameterDescriptor sets this)Robin Gareus
2017-06-30Tweak LV2 float parameter printingRobin Gareus
2017-06-29Fix multi-channel delaylines #7409 part 2/2Robin Gareus
2017-06-29Fix send mono to stereo (or N to M; M > N) sends #7409 part 1/2Robin Gareus
2017-06-27Distinguish error-messages.Robin Gareus
The vast majority of errors reported by users as "Cannot configure audio/midi engine with session parameters" have nothing to do with engine-parameters.
2017-06-26Add convenience fn to compute a file's sha1sumRobin Gareus
2017-06-25Allow saving state w/o backendRobin Gareus
Connections are remembered by ARDOUR::Port to re-establish at load.
2017-06-25Create a deep-copy of MIDI sources when saving snapshotsRobin Gareus
2017-06-25Extend API to allow calling new_midi_source_path() with source_lock heldRobin Gareus
This is in preparation for cloning MIDI-sources during snapshot save.
2017-06-24Fix metronome + capture alignment for MixbusRobin Gareus
2017-06-23leave a hint for clang's static analyzerRobin Gareus
2017-06-23Remove Automation Types that should never have existed.Robin Gareus
2017-06-23Implement undo for merging VCA-master automation/value on disconnect.Robin Gareus
2017-06-23Improve default parameter displayRobin Gareus
2017-06-23Remove unnecessary LocaleGuard header includeTim Mayberry
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-22NO-OP: whitespaceRobin Gareus
2017-06-22Remove LocaleGuard from Plugin::get_stateTim Mayberry
Let the plugin implementation of Plugin::add_state use a LocaleGuard if it is necessary (VST/LV2). This puts the LocaleGuards where they are required but the LocaleGuards in Session::set/get_state will mean these LocaleGuards are a noop. They are still useful for documentation purposes and in case the code is called from a non-Session context at some point.
2017-06-22Remove LocaleGuards from LadspaPlugin::set/add_stateTim Mayberry
String <-> type conversion is being performed by the pbd/string_convert.h API via PBD::XMLNode so LocaleGuards are not necessary.
2017-06-22Remove unnecessary LocaleGuards from VSTPlugin derived classesTim Mayberry
VSTPlugin::set_state and VSTPlugin::add_state methods both already contain LocaleGuard instances.
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::PannerShellTim Mayberry
All Panner implementations using PBD::to_string/string_to for float <=> string conversion and no longer require a LocaleGuard.
2017-06-22Remove LocaleGuard from ARDOUR::Pannable classTim Mayberry
string <=> float conversions are using PBD::to_string/string_to and no longer require a LocaleGuard
2017-06-22Remove LocaleGuards from ARDOUR::Tempo classTim Mayberry
All float <=> string conversions are done for PBD::string_to/to_string and no longer require a LocaleGuard.
2017-06-22Remove LocaleGuards from ARDOUR::Speakers classTim Mayberry
float <=> string conversions are now using PBD::to_string/string_to via XMLNode for locale independent conversion and these guards are not necessary.
2017-06-22Remove LocaleGuards from ARDOUR::Session transport related methodsTim Mayberry
ARDOUR::AutomationList is no longer using LocaleGuards as float <=> string conversion is using PBD::to_string/string_to so the reason for adding these guards as per comment no longer applies.
2017-06-22Remove LocaleGuard from Session::load_optionsTim Mayberry
PBD::ConfigVariable uses PBD::to_string/string_to methods so this LocaleGuard is no longer necessary.
2017-06-22Remove LocaleGuards from SessionConfiguration classTim Mayberry
ConfigurationVariable is now using PBD::to_string/string_to for float <=> string conversions so LocaleGuard is no longer necessary.
2017-06-22Remove LocaleGuard from Session::immediately_post_engine methodTim Mayberry
I think this was only to protect the float <=> string conversion in Session::setup_click_state related to click gain which is now using PBD::to_string/string_to and so no longer necessary.
2017-06-22Remove LocaleGuard from ARDOUR::Route classTim Mayberry
Route and all members are now using locale independent string <=> float conversions.
2017-06-22Remove LocaleGuard from ARDOUR::MonitorProcessor state methodTim Mayberry
All float <=> string conversions are done using PBD::to_string/string_to via XMLNode and LocaleGuard is not necessary.
2017-06-22Remove LocaleGuard from ARDOUR::RCConfiguration classTim Mayberry
This presumes that all ControlProtocol implementations either use PBD::to_string/string_to for float <=> string conversions, which is now the case.
2017-06-22Remove LocaleGuards from LuaProc classTim Mayberry
All float <=> string conversions are done using PBD::to_string/string_to via XMLNode so no LocaleGuard is necessary.