ardour.git
6 years agoDon't save "end-is-free" with templates
Robin Gareus [Thu, 4 May 2017 21:00:21 +0000 (23:00 +0200)]
Don't save "end-is-free" with templates

6 years agoLua bindings for "end-is-free" (automatic session-end location marker)
Robin Gareus [Thu, 4 May 2017 19:08:17 +0000 (21:08 +0200)]
Lua bindings for "end-is-free" (automatic session-end location marker)

6 years agoScaleable group-tabs: use Pango to layout text, scale with UI #7331
Robin Gareus [Thu, 4 May 2017 17:15:18 +0000 (19:15 +0200)]
Scaleable group-tabs: use Pango to layout text, scale with UI #7331

6 years agoScale scommer and piano-keyboard width with GUI
Robin Gareus [Thu, 4 May 2017 15:22:43 +0000 (17:22 +0200)]
Scale scommer and piano-keyboard width with GUI

6 years agoConvert old v4 Track monitoring session-state (untested)
Robin Gareus [Thu, 4 May 2017 15:19:55 +0000 (17:19 +0200)]
Convert old v4 Track monitoring session-state (untested)

6 years agoUpdate Tempo Tapping:
Robin Gareus [Thu, 4 May 2017 14:12:26 +0000 (16:12 +0200)]
Update Tempo Tapping:

* Allow tap with keyboard (Space, Enter)
* Ignore double-clicks (2nd rapid event skewed calculation)

6 years agoOSC: Add /jog/mode/name
Len Ovens [Thu, 4 May 2017 04:38:52 +0000 (21:38 -0700)]
OSC: Add /jog/mode/name

6 years agoOSC: Fix puctuation
Len Ovens [Thu, 4 May 2017 04:36:58 +0000 (21:36 -0700)]
OSC: Fix puctuation

6 years agoOSC: arrange modes in a more logical order.
Len Ovens [Thu, 4 May 2017 01:19:45 +0000 (18:19 -0700)]
OSC: arrange modes in a more logical order.

6 years agoOSC: Add multimode /jog command
Len Ovens [Wed, 3 May 2017 23:31:46 +0000 (16:31 -0700)]
OSC: Add multimode /jog command

6 years agoNO-OP: whitespace
Robin Gareus [Wed, 3 May 2017 22:43:40 +0000 (00:43 +0200)]
NO-OP: whitespace

6 years agoThe return of explicit exclusive solo.
Robin Gareus [Wed, 3 May 2017 22:42:07 +0000 (00:42 +0200)]
The return of explicit exclusive solo.

6 years agoMIDI learn on ctrl + middle-click only (not ctrl + other mods + btn2).
Robin Gareus [Wed, 3 May 2017 22:35:56 +0000 (00:35 +0200)]
MIDI learn on ctrl + middle-click only (not ctrl + other mods + btn2).

This fixes various other operations that use ctrl + btn2.
e.g. ctrl+alt+btn2 temporary all un/solo/mute.

6 years agoLua bindings to set group color
Robin Gareus [Wed, 3 May 2017 15:47:16 +0000 (17:47 +0200)]
Lua bindings to set group color

6 years agoGUI update: migrate group-color into the session (not GUI state)
Robin Gareus [Wed, 3 May 2017 15:46:58 +0000 (17:46 +0200)]
GUI update: migrate group-color into the session (not GUI state)

6 years agoMove RouteGroup color into libardour.
Robin Gareus [Wed, 3 May 2017 15:36:35 +0000 (17:36 +0200)]
Move RouteGroup color into libardour.

This allows to change it from scripts and surfaces and consolidates code.

6 years agoNO-OP: whitespace
Robin Gareus [Wed, 3 May 2017 13:03:23 +0000 (15:03 +0200)]
NO-OP: whitespace

7 years agoOSC scrub, fix numbers to work with usec rather than msec.
Len Ovens [Mon, 1 May 2017 20:53:03 +0000 (13:53 -0700)]
OSC scrub, fix numbers to work with usec rather than msec.

7 years agoOSC: fix scrub to not use boost ptime.
Len Ovens [Mon, 1 May 2017 20:45:47 +0000 (13:45 -0700)]
OSC: fix scrub to not use boost ptime.

7 years agoOSC: add /scrub function
Len Ovens [Mon, 1 May 2017 14:08:02 +0000 (07:08 -0700)]
OSC: add /scrub function

7 years agoMake -A open action list in a browser instead of command terminal.
Len Ovens [Sun, 30 Apr 2017 05:47:24 +0000 (22:47 -0700)]
Make -A open action list in a browser instead of command terminal.

7 years agoTime flies
Robin Gareus [Sat, 29 Apr 2017 23:22:05 +0000 (01:22 +0200)]
Time flies

7 years agoFix copy/paste typos in --help
Robin Gareus [Sat, 29 Apr 2017 23:21:41 +0000 (01:21 +0200)]
Fix copy/paste typos in --help

7 years agoFix vari-speed and non-locked slave modes
Robin Gareus [Sat, 29 Apr 2017 21:02:40 +0000 (23:02 +0200)]
Fix vari-speed and non-locked slave modes

A transport-speed-change is no reason to skip processing.

Prior to this change cannot_process() silently skipped in the process
cycle of the speed-change (which may have been every process-cycle),
without moving the transport or doing any processing.

7 years agoSet -b to open in browser.
Len Ovens [Sat, 29 Apr 2017 22:37:31 +0000 (15:37 -0700)]
Set -b to open in browser.

7 years agoFP8: channel-navigation/scroll select track on encoder press
Robin Gareus [Sat, 29 Apr 2017 10:38:38 +0000 (12:38 +0200)]
FP8: channel-navigation/scroll select track on encoder press

7 years agoAdd a "select topmost" track editor action
Robin Gareus [Sat, 29 Apr 2017 10:38:03 +0000 (12:38 +0200)]
Add a "select topmost" track editor action

7 years agoFP8: snap-to scroll tracks, both editor+mixer
Robin Gareus [Sat, 29 Apr 2017 10:37:31 +0000 (12:37 +0200)]
FP8: snap-to scroll tracks, both editor+mixer

7 years agoNO-OP: whitespace
Robin Gareus [Sat, 29 Apr 2017 10:01:56 +0000 (12:01 +0200)]
NO-OP: whitespace

7 years agoMissed a spot in adding -A, fixed
Len Ovens [Fri, 28 Apr 2017 15:44:35 +0000 (08:44 -0700)]
Missed a spot in adding -A, fixed

7 years agoChange actions to -A and use -b to output keybindings
Len Ovens [Fri, 28 Apr 2017 15:19:20 +0000 (08:19 -0700)]
Change actions to -A and use -b to output keybindings

7 years agoextend 3cda0e2a: Don't switch to range-mode if not needed for similar OPs.
Robin Gareus [Fri, 28 Apr 2017 13:07:41 +0000 (15:07 +0200)]
extend 3cda0e2a: Don't switch to range-mode if not needed for similar OPs.

7 years agoWhen in smart-mode, don't switch to range-mode after "set range selection"
Robin Gareus [Fri, 28 Apr 2017 12:57:13 +0000 (14:57 +0200)]
When in smart-mode, don't switch to range-mode after "set range selection"

closes #7332

7 years agoOpen session folder when selecting path
Robin Gareus [Fri, 28 Apr 2017 12:33:06 +0000 (14:33 +0200)]
Open session folder when selecting path

7 years agoAllow "remove from recent" only for top-level
Robin Gareus [Fri, 28 Apr 2017 12:32:37 +0000 (14:32 +0200)]
Allow "remove from recent" only for top-level

7 years agotry work-around occasionally misplaced app icons in dmg (set twice)
Robin Gareus [Thu, 27 Apr 2017 19:19:27 +0000 (21:19 +0200)]
try work-around occasionally misplaced app icons in dmg (set twice)

7 years agoAllow to hide engine dialog w/o unloading session.
Robin Gareus [Thu, 27 Apr 2017 19:10:37 +0000 (21:10 +0200)]
Allow to hide engine dialog w/o unloading session.

7 years agoEngineDialog: immediadely push latency changes to running backends
Robin Gareus [Thu, 27 Apr 2017 19:10:10 +0000 (21:10 +0200)]
EngineDialog: immediadely push latency changes to running backends

7 years agoNO-OP: whitespace
Robin Gareus [Thu, 27 Apr 2017 19:09:12 +0000 (21:09 +0200)]
NO-OP: whitespace

7 years agoFix flow for measuring latencies of live backends
Robin Gareus [Thu, 27 Apr 2017 19:07:18 +0000 (21:07 +0200)]
Fix flow for measuring latencies of live backends

7 years agoALSA backend: always register ports with systemic latency
Robin Gareus [Thu, 27 Apr 2017 18:59:15 +0000 (20:59 +0200)]
ALSA backend: always register ports with systemic latency

and allow re-start to un/set reporting latency.

7 years agoDon't directly call into engine to stop latency detection.
Robin Gareus [Thu, 27 Apr 2017 17:45:56 +0000 (19:45 +0200)]
Don't directly call into engine to stop latency detection.

7 years agoFix flow for latency measurements that needs an engine stop.
Robin Gareus [Thu, 27 Apr 2017 17:43:34 +0000 (19:43 +0200)]
Fix flow for latency measurements that needs an engine stop.

Make AudioEngine::prepare_for_latency_measurement() idempotent. There are
multple calls (when switching to the measurement page and every time
a measurement is preformed).

Also the Stopped() signal is important for the Dialog state regardless
if the engine was stopped for latency or not.

7 years agoFix Editor/Mixer visibility (OSX, NSGLCanvas)
Robin Gareus [Thu, 27 Apr 2017 14:21:27 +0000 (16:21 +0200)]
Fix Editor/Mixer visibility (OSX, NSGLCanvas)

Only unpacking a widget retains the GdkWindow and and the widget is still
mapped. The NSView is still visible. See also 235631a6.

7 years agoAnnotate CC-to-Automation Lua-script and fix start/pos offset.
Robin Gareus [Thu, 27 Apr 2017 13:36:50 +0000 (15:36 +0200)]
Annotate CC-to-Automation Lua-script and fix start/pos offset.

7 years agoConsistent button visibility (mixer-strips + VCAs)
Robin Gareus [Wed, 26 Apr 2017 22:25:57 +0000 (00:25 +0200)]
Consistent button visibility (mixer-strips + VCAs)

7 years agoFix nested VCA assigns and mixer-layout:
Robin Gareus [Wed, 26 Apr 2017 22:11:18 +0000 (00:11 +0200)]
Fix nested VCA assigns and mixer-layout:

Show initial VCA assign button on all mixer-strips and VCAs if
there's no assignment.

7 years agofix a -Wreorder following d837914e2
Robin Gareus [Wed, 26 Apr 2017 21:42:47 +0000 (23:42 +0200)]
fix a -Wreorder following d837914e2

7 years agoAutomationLine time-unit conversion and paste API update
Robin Gareus [Wed, 26 Apr 2017 14:21:39 +0000 (16:21 +0200)]
AutomationLine time-unit conversion and paste API update

This fixes copy/paste of MIDI automation (time-unit: beat) from/to
Parameter automation (time-unit: samples).

It also fixes repeatedly pasting with tempo-ramps: pre-multiply length
before converting to samples.

7 years agoSkip script-setup if there are no parameters (and name is unique)
Robin Gareus [Wed, 26 Apr 2017 17:45:03 +0000 (19:45 +0200)]
Skip script-setup if there are no parameters (and name is unique)

7 years agoUse a const iterator for sorted RouteList in Session::state
Tim Mayberry [Wed, 26 Apr 2017 07:33:55 +0000 (17:33 +1000)]
Use a const iterator for sorted RouteList in Session::state

7 years agoSort Route xml node order by PBD::ID instead of by PresentationInfo
Tim Mayberry [Fri, 21 Apr 2017 10:33:05 +0000 (20:33 +1000)]
Sort Route xml node order by PBD::ID instead of by PresentationInfo

This prevents the node order from changing when the display order of the Routes
changes, which helps to reduce the amount of Session file change.

This is useful for testing and if keeping sessions under version control.

Resolves: #7327

7 years agoAccommodate newly introduced source(s) in our MSVC project (gtk2_ardour)
John Emmas [Wed, 26 Apr 2017 07:09:35 +0000 (08:09 +0100)]
Accommodate newly introduced source(s) in our MSVC project (gtk2_ardour)

7 years agoAssume VST chunks are portable (Mac, Linux, Windows VST)
Robin Gareus [Tue, 25 Apr 2017 16:40:43 +0000 (18:40 +0200)]
Assume VST chunks are portable (Mac, Linux, Windows VST)

7 years agoFix conversion in 41b997a90 (monitor cut, invert)
Robin Gareus [Tue, 25 Apr 2017 15:22:39 +0000 (17:22 +0200)]
Fix conversion in 41b997a90 (monitor cut, invert)

7 years agoUpdate LuaDialog scripts
Robin Gareus [Tue, 25 Apr 2017 14:46:21 +0000 (16:46 +0200)]
Update LuaDialog scripts

7 years agoLua Dialog refinements:
Robin Gareus [Tue, 25 Apr 2017 14:45:18 +0000 (16:45 +0200)]
Lua Dialog refinements:

* Add Heading Widget
* Swap OK/Cancel Buttons
* Update table layout (spacing + alignment)
* Some whitespace tweaks

7 years agoAdd missing Lua ClassKeys (windows build)
Robin Gareus [Tue, 25 Apr 2017 13:48:14 +0000 (15:48 +0200)]
Add missing Lua ClassKeys (windows build)

7 years agoFix Windows build: declare static class-keys (amend 201fd5574)
Robin Gareus [Tue, 25 Apr 2017 12:05:34 +0000 (14:05 +0200)]
Fix Windows build: declare static class-keys (amend 201fd5574)

7 years agoUpdate CC-to-Automation script: use Lua-Dialog for parameters
Robin Gareus [Tue, 25 Apr 2017 12:00:29 +0000 (14:00 +0200)]
Update CC-to-Automation script: use Lua-Dialog for parameters

7 years agoAdd a Lua script to exercise the LuaDialog
Robin Gareus [Tue, 25 Apr 2017 03:26:56 +0000 (05:26 +0200)]
Add a Lua script to exercise the LuaDialog

7 years agoLua: Action Script Dialog & MessageBox
Robin Gareus [Mon, 24 Apr 2017 20:12:09 +0000 (22:12 +0200)]
Lua: Action Script Dialog & MessageBox

7 years agoSome more Lua ARDOUR::Plugin bindings
Robin Gareus [Tue, 25 Apr 2017 11:59:43 +0000 (13:59 +0200)]
Some more Lua ARDOUR::Plugin bindings

7 years agoAdd an API to conveniently query plugin-parameter labels
Robin Gareus [Tue, 25 Apr 2017 11:59:15 +0000 (13:59 +0200)]
Add an API to conveniently query plugin-parameter labels

7 years agoExpose ArdourDropdown's menu for submenu packing
Robin Gareus [Tue, 25 Apr 2017 08:57:35 +0000 (10:57 +0200)]
Expose ArdourDropdown's menu for submenu packing

7 years agoRemove old special case (ArdourDialog::on_response hides the dialog)
Robin Gareus [Tue, 25 Apr 2017 01:55:25 +0000 (03:55 +0200)]
Remove old special case (ArdourDialog::on_response hides the dialog)

7 years agode-select WASAPI by default
Robin Gareus [Mon, 24 Apr 2017 19:08:32 +0000 (21:08 +0200)]
de-select WASAPI by default

7 years agoAdd example script to convert MIDI-CC to Plugin Automation
Robin Gareus [Mon, 24 Apr 2017 02:15:16 +0000 (04:15 +0200)]
Add example script to convert MIDI-CC to Plugin Automation

7 years agoSimplify example script
Robin Gareus [Mon, 24 Apr 2017 02:12:13 +0000 (04:12 +0200)]
Simplify example script

Now that AutomationList is-a ControlList no explicit cast is needed.

7 years agoAdd ControlEvent Lua bindings and related methods to access MIDI-CC
Robin Gareus [Mon, 24 Apr 2017 02:10:10 +0000 (04:10 +0200)]
Add ControlEvent Lua bindings and related methods to access MIDI-CC

7 years agoSwap inheritance, simplifies Lua Bindings
Robin Gareus [Mon, 24 Apr 2017 02:08:53 +0000 (04:08 +0200)]
Swap inheritance, simplifies Lua Bindings

7 years agoAdd regions at once rather than individually when restoring Selection state
Tim Mayberry [Sun, 23 Apr 2017 11:32:09 +0000 (21:32 +1000)]
Add regions at once rather than individually when restoring Selection state

This is a workaround for performance issues with the current implementation
when adding many regions to the selection one at a time.

If the Selection implementation was to change at some point and adding regions
to the selection only takes a small constant amount of time, then this
optimization may no longer be necessary.

Related to: #7274

7 years agoChanged "ardour" to PROGRAM_NAME
Len Ovens [Sat, 22 Apr 2017 22:32:48 +0000 (15:32 -0700)]
Changed "ardour" to PROGRAM_NAME

7 years agoClose all dialogs when closing a session (not only at exit).
Robin Gareus [Sat, 22 Apr 2017 21:05:37 +0000 (23:05 +0200)]
Close all dialogs when closing a session (not only at exit).

7 years agoReset process-graph semaphores on engine-restart
Robin Gareus [Sat, 22 Apr 2017 21:01:26 +0000 (23:01 +0200)]
Reset process-graph semaphores on engine-restart

7 years agoAdd mechanism to reset/lock semaphores
Robin Gareus [Sat, 22 Apr 2017 21:00:53 +0000 (23:00 +0200)]
Add mechanism to reset/lock semaphores

7 years agoremove unused semaphore
Robin Gareus [Sat, 22 Apr 2017 20:16:06 +0000 (22:16 +0200)]
remove unused semaphore

7 years agoNO-OP: whitespace
Robin Gareus [Sat, 22 Apr 2017 19:28:05 +0000 (21:28 +0200)]
NO-OP: whitespace

7 years agoPrivatize non-public methods
Robin Gareus [Sat, 22 Apr 2017 19:27:00 +0000 (21:27 +0200)]
Privatize non-public methods

7 years agoSet -b switch to only two columns, correct options text.
Len Ovens [Sat, 22 Apr 2017 15:07:35 +0000 (08:07 -0700)]
Set -b switch to only two columns, correct options text.

7 years agoNO-OP: whitespace
Robin Gareus [Sat, 22 Apr 2017 14:09:10 +0000 (16:09 +0200)]
NO-OP: whitespace

7 years agoAdd a Readme pertaining to GH release tarballs
Robin Gareus [Sat, 22 Apr 2017 14:04:35 +0000 (16:04 +0200)]
Add a Readme pertaining to GH release tarballs

7 years agoRemove stub file which was used for pre-commit hook testing
Robin Gareus [Sat, 22 Apr 2017 13:19:34 +0000 (15:19 +0200)]
Remove stub file which was used for pre-commit hook testing

7 years agoamend be62d335ee
Robin Gareus [Fri, 21 Apr 2017 23:06:54 +0000 (01:06 +0200)]
amend be62d335ee

7 years agofix endless loop when clicking on the canvas w/o backend
Robin Gareus [Fri, 21 Apr 2017 21:54:17 +0000 (23:54 +0200)]
fix endless loop when clicking on the canvas w/o backend

7 years agoAdd HTML output for -b so that output can replace actions page in manual.
Len Ovens [Fri, 21 Apr 2017 19:58:59 +0000 (12:58 -0700)]
Add HTML output for -b so that output can replace actions page in manual.

7 years agoOSC: correct spelling
Len Ovens [Fri, 21 Apr 2017 14:29:13 +0000 (07:29 -0700)]
OSC: correct spelling

7 years agoResolve potential variable name ambiguity for older compilers
Robin Gareus [Fri, 21 Apr 2017 14:05:24 +0000 (16:05 +0200)]
Resolve potential variable name ambiguity for older compilers

7 years agoRe-nice ALSA MIDI port names
Robin Gareus [Fri, 21 Apr 2017 08:43:22 +0000 (10:43 +0200)]
Re-nice ALSA MIDI port names

7 years agoDo not clear pretty-names set by the backend
Robin Gareus [Fri, 21 Apr 2017 08:26:59 +0000 (10:26 +0200)]
Do not clear pretty-names set by the backend

Since 7dde6c3b8f pretty-names are no longer saved and hence initially
empty. The port-manager cleared existing pretty-port-names.

7 years agoFix thinko in 6ae047cdd and 8f488515 (prefer LV2 symbol over ID)
Robin Gareus [Fri, 21 Apr 2017 03:36:52 +0000 (05:36 +0200)]
Fix thinko in 6ae047cdd and 8f488515 (prefer LV2 symbol over ID)

7 years agoUse correct property names in PBD::Undo class
Tim Mayberry [Thu, 20 Apr 2017 00:55:31 +0000 (10:55 +1000)]
Use correct property names in PBD::Undo class

These have been "normalized" in XMLProperty ctor for many years, so this does
not change the Session format.

7 years agoUse XMLNode::get_property in Session::restore_history
Tim Mayberry [Wed, 19 Apr 2017 12:21:03 +0000 (22:21 +1000)]
Use XMLNode::get_property in Session::restore_history

Avoid using std::stringstream due to potential future issues with C++ locale.

Also avoids potential NULL pointer dereferences.

7 years agoUse hyphen for XML property names
Tim Mayberry [Wed, 19 Apr 2017 10:57:18 +0000 (20:57 +1000)]
Use hyphen for XML property names

These have been normalized/modified by the XMLProperty ctor for many years (~9)
so special treatment when reading properties should not be needed.

7 years agoUse XMLNode::get_property in Session::memento_command_factory
Tim Mayberry [Wed, 19 Apr 2017 10:48:47 +0000 (20:48 +1000)]
Use XMLNode::get_property in Session::memento_command_factory

Avoids potential issues with dereferencing a NULL XMLProperty pointer and
improves readability by using better locally scoped variable names.

7 years agoFix restoration of Plugin Controllable state ID's
Tim Mayberry [Fri, 21 Apr 2017 01:40:03 +0000 (11:40 +1000)]
Fix restoration of Plugin Controllable state ID's

Caused by thinko when merging/replacing two conditional clauses in the
string-convert changes which resulted in bindings not being restored and
regeneration of id's in XML.

7 years agoRetain state of disabled ctrl-surfaces
Robin Gareus [Fri, 21 Apr 2017 01:47:26 +0000 (03:47 +0200)]
Retain state of disabled ctrl-surfaces

7 years agoFix adeadlock (or rather NDEADLCK)
Robin Gareus [Fri, 21 Apr 2017 01:37:26 +0000 (03:37 +0200)]
Fix adeadlock (or rather NDEADLCK)

ControlProtocolManager::set_state() already takes the protocols_lock.
However effectively this is a NO-OP. During ::set_state no CPI should
be instantiated and  ControlProtocolManager::teardown() returns early.

7 years agoUpdate preferences when Ctrl-surfaces change with session.
Robin Gareus [Fri, 21 Apr 2017 00:56:29 +0000 (02:56 +0200)]
Update preferences when Ctrl-surfaces change with session.

7 years agoNotify GUI when tearing down ctrl-surfaces
Robin Gareus [Fri, 21 Apr 2017 00:53:51 +0000 (02:53 +0200)]
Notify GUI when tearing down ctrl-surfaces