ardour.git
7 years agoiterator std::set::erase (iterator) is C++11
Robin Gareus [Mon, 8 May 2017 14:30:54 +0000 (16:30 +0200)]
iterator std::set::erase (iterator) is C++11

7 years agoLimit clock displays to 30days (720hours) by default.
Robin Gareus [Mon, 8 May 2017 10:37:17 +0000 (12:37 +0200)]
Limit clock displays to 30days (720hours) by default.

This prevents various edge-cases of selection-clocks (eg. unbound range
selection after start-range; and makes it near impossible to roll-over
2^63 using GUI operations)

7 years agofix copy-n-paste error
Paul Davis [Mon, 8 May 2017 10:03:35 +0000 (11:03 +0100)]
fix copy-n-paste error

7 years agofix logic when removing routes
Paul Davis [Mon, 8 May 2017 09:56:24 +0000 (10:56 +0100)]
fix logic when removing routes

Selection change and re-order signals are distinct.

7 years agoremove misc. debug output
Paul Davis [Mon, 8 May 2017 09:40:11 +0000 (10:40 +0100)]
remove misc. debug output

7 years agowhen removing a Route from Session, remove it from CoreSelection and signal that...
Paul Davis [Mon, 8 May 2017 09:36:46 +0000 (10:36 +0100)]
when removing a Route from Session, remove it from CoreSelection and signal that change if necessary

7 years agowhen removing Stripables from CoreSelection by ID, be sure to remove all possible...
Paul Davis [Mon, 8 May 2017 09:36:04 +0000 (10:36 +0100)]
when removing Stripables from CoreSelection by ID, be sure to remove all possible entries in the Selection

A Stripable may have itself plus zero-to-N automation controls in
CoreSelection.

7 years agoallow Session to call Session::remove_stripable_by_id()
Paul Davis [Mon, 8 May 2017 09:35:10 +0000 (10:35 +0100)]
allow Session to call Session::remove_stripable_by_id()

7 years agowhen a Route is removed, don't bother triggering a sync-presentation-info-from-treevi...
Paul Davis [Mon, 8 May 2017 09:33:37 +0000 (10:33 +0100)]
when a Route is removed, don't bother triggering a sync-presentation-info-from-treeview because it isn't necessary

Also, don't update mixer selection unless selection actually changed

7 years agowhen a Route is removed, don't bother triggering a sync-presentation-info-from-treevi...
Paul Davis [Mon, 8 May 2017 09:31:59 +0000 (10:31 +0100)]
when a Route is removed, don't bother triggering a sync-presentation-info-from-treeview because it isn't necessary

7 years agoUpdate Japanese translation
Hiroki Inagaki [Sun, 7 May 2017 20:19:09 +0000 (13:19 -0700)]
Update Japanese translation

7 years agoSemaphores need to have a unique name -- fixes #7341
Robin Gareus [Sun, 7 May 2017 00:02:30 +0000 (02:02 +0200)]
Semaphores need to have a unique name -- fixes #7341

On Windows (and OSX) semaphores are named. If the name matches an existing
semaphore, it is re-used and not re-initialized. In case of multiple
LV2-plugins each with a worker-thread this can lead to a deadlock.

7 years agoreally fix opening session-archives -- amend 1f80f059be
Robin Gareus [Sat, 6 May 2017 20:05:26 +0000 (22:05 +0200)]
really fix opening session-archives -- amend 1f80f059be

7 years agoFix opening session-archives
Robin Gareus [Sat, 6 May 2017 16:31:18 +0000 (18:31 +0200)]
Fix opening session-archives

7 years ago-Wnon-virtual-dtor
Robin Gareus [Sat, 6 May 2017 13:41:22 +0000 (15:41 +0200)]
-Wnon-virtual-dtor

7 years agoNO-OP: whitespace and FSF address
Robin Gareus [Sat, 6 May 2017 13:11:53 +0000 (15:11 +0200)]
NO-OP: whitespace and FSF address

7 years agoFactor RMS normalization by sqrt(2); match sine peak
Robin Gareus [Sat, 6 May 2017 13:09:05 +0000 (15:09 +0200)]
Factor RMS normalization by sqrt(2); match sine peak

7 years agoAccommodate newly introduced source(s) in our MSVC project (gtk2_ardour)
John Emmas [Sat, 6 May 2017 12:35:06 +0000 (13:35 +0100)]
Accommodate newly introduced source(s) in our MSVC project (gtk2_ardour)

7 years agoAccommodate newly introduced source(s) in our MSVC project (libardour)
John Emmas [Sat, 6 May 2017 12:34:39 +0000 (13:34 +0100)]
Accommodate newly introduced source(s) in our MSVC project (libardour)

7 years agoMSVC won't allow us to erase an item referenced by const_iterator
John Emmas [Sat, 6 May 2017 12:33:38 +0000 (13:33 +0100)]
MSVC won't allow us to erase an item referenced by const_iterator

7 years agoThe new class 'ARDOUR::CoreSelection' needs to be exportable (since it gets used...
John Emmas [Sat, 6 May 2017 12:32:20 +0000 (13:32 +0100)]
The new class 'ARDOUR::CoreSelection' needs to be exportable (since it gets used outside of libardour)

7 years agoOSC: make some more paths work with or without a parameter.
Len Ovens [Fri, 5 May 2017 15:58:49 +0000 (08:58 -0700)]
OSC: make some more paths work with or without a parameter.

7 years agoOSC: remove debug output.
Len Ovens [Fri, 5 May 2017 05:01:07 +0000 (22:01 -0700)]
OSC: remove debug output.

7 years agopart two of add missing files from selection development branch(es)
Paul Davis [Fri, 5 May 2017 18:26:10 +0000 (19:26 +0100)]
part two of add missing files from selection development branch(es)

7 years agoadd missing files from selection development branch(es)
Paul Davis [Fri, 5 May 2017 18:25:35 +0000 (19:25 +0100)]
add missing files from selection development branch(es)

7 years agoEditor::axis_view_by_control() needs to explore child tracks, now that Selection...
Paul Davis [Fri, 5 May 2017 17:06:51 +0000 (18:06 +0100)]
Editor::axis_view_by_control() needs to explore child tracks, now that Selection is relying on it

7 years agomaintain CoreSelection order in GUI track selection
Paul Davis [Fri, 5 May 2017 15:34:32 +0000 (16:34 +0100)]
maintain CoreSelection order in GUI track selection

7 years agouse CoreSelection for track selection
Paul Davis [Fri, 5 May 2017 11:31:49 +0000 (12:31 +0100)]
use CoreSelection for track selection

7 years agolibardour now has CoreSelection object to manage selection status of Stripables and...
Paul Davis [Fri, 5 May 2017 11:31:21 +0000 (12:31 +0100)]
libardour now has CoreSelection object to manage selection status of Stripables and AutomationControls

7 years agoextend PBD::ID API to allow construction and operator== using uint64_t
Paul Davis [Fri, 5 May 2017 11:18:06 +0000 (12:18 +0100)]
extend PBD::ID API to allow construction and operator== using uint64_t

This is theoretically dangerous, because a PBD::ID is supposed to be unique, and this new constructor
cannot guarantee that. However, the same danger already exists with the std::string-based constructor

7 years agoFP8: use new libardour API
Robin Gareus [Fri, 5 May 2017 14:48:11 +0000 (16:48 +0200)]
FP8: use new libardour API

7 years agoMove special-cased FP8 mute-state into libardour
Robin Gareus [Fri, 5 May 2017 14:47:25 +0000 (16:47 +0200)]
Move special-cased FP8 mute-state into libardour

7 years agoFP8: ignore inactive muted tracks w/mute-clear
Robin Gareus [Fri, 5 May 2017 13:36:08 +0000 (15:36 +0200)]
FP8: ignore inactive muted tracks w/mute-clear

7 years agoFP8: solo+mute undo
Robin Gareus [Fri, 5 May 2017 13:26:52 +0000 (15:26 +0200)]
FP8: solo+mute undo

Eventually this should be moved into libardour: Mixer undo history.
the tentative solution is specifically ifdef'ed FP8_MUTESOLO_UNDO.

7 years agoFix converting v4 monitor state -- amend 8a6d30377
Robin Gareus [Fri, 5 May 2017 12:31:19 +0000 (14:31 +0200)]
Fix converting v4 monitor state -- amend 8a6d30377

It looks like MonitorControl::_monitoring is unused and should be removed.
The actual value is Evoral::Control::_user_value

7 years agoremove cruft (unused UI::ui_scale)
Robin Gareus [Fri, 5 May 2017 11:59:48 +0000 (13:59 +0200)]
remove cruft (unused UI::ui_scale)

7 years agofix ruler scaling -- #7226
Robin Gareus [Fri, 5 May 2017 11:58:59 +0000 (13:58 +0200)]
fix ruler scaling -- #7226

7 years agoOSC: personal monitoring, fix crash and minor bugs
Len Ovens [Thu, 4 May 2017 22:50:24 +0000 (15:50 -0700)]
OSC: personal monitoring, fix crash and minor bugs

7 years agofix/amend previous commit.
Robin Gareus [Thu, 4 May 2017 21:06:52 +0000 (23:06 +0200)]
fix/amend previous commit.

7 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

7 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)

7 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

7 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

7 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)

7 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)

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

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

7 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.

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

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

7 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.

7 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.

7 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

7 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)

7 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.

7 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