Commit Graph

34371 Commits

Author SHA1 Message Date
Mads Kiilerich
a55ee74c4e i18n: Don't localize "" - that is a special gettext string
Address build warnings:
audio_clock.cc:911: warning: Empty msgid.  It is reserved by GNU gettext:
                             gettext("") returns the header entry with
                             meta information, not the empty string.
audio_clock.cc:912: warning: Empty msgid.  It is reserved by GNU gettext:
                             gettext("") returns the header entry with
                             meta information, not the empty string.
session_dialog.cc:604: warning: Empty msgid.  It is reserved by GNU gettext:
                                gettext("") returns the header entry with
                                meta information, not the empty string.
session_dialog.cc:605: warning: Empty msgid.  It is reserved by GNU gettext:
                                gettext("") returns the header entry with
                                meta information, not the empty string.

Use ("") instead of _("") to try to indicate syntactically that
localization markup intentionally has been left out.
2022-01-22 20:26:50 +01:00
Robin Gareus
f9f3f598c4 Address rare race condition when creating sidechain inputs
Do not run the sidechaing processor before the processor
was configured. This ensure that Route::configure_processors()
has completed and ensure_buffers() was called.

Otherwise it may happen Sidechain::run could request a buffer
that is n/a (BufferSet::get_available assertion, see also 687149d8d2)
2022-01-22 19:26:27 +01:00
Robin Gareus
0e6561b009 Fix Thread & Lock issues when adding Triggerbox w/sidechain
Track::init() must not call `add_processor` directly.
The track is not in the process graph, yet and hence various
calls (e.g. lock graph, update latency etc) are not applicable.

Furthermore ::add_midi_sidechain() calls IO::add_port()
which takes the process-lock.

The solution is to create the Triggerbox early on and let Route::init
deal with it like any other internal processors.
2022-01-22 04:20:55 +01:00
Robin Gareus
687149d8d2 Require Session MIDI buffer for Triggerbox sidechain
This fixes an issue when adding a MIDI track, but there there
are no session-buffers for it, leading to:

ARDOUR::Buffer& ARDOUR::BufferSet::get_available(ARDOUR::DataType, size_t): Assertioni < _available.get(type)' failed.
2022-01-22 04:20:54 +01:00
Ben Loftis
b3f524a78a Ruler markers: less drastic highlights in ruler bars 2022-01-21 19:25:33 -06:00
Ben Loftis
d6815d7e40 trigger page: rough-in a control for Cue Recording 2022-01-21 17:45:26 -06:00
Ben Loftis
094fbfa132 trigger page: shrink Cue column to minimum (?) 2022-01-21 17:45:26 -06:00
Ben Loftis
b0a2d678dc trigger_ui: implement direct-Jump actions from trigger slots; context-menu and icons 2022-01-21 17:45:26 -06:00
Ben Loftis
8ed6f685cf trigger_ui: remove Jump action from trigger-master (column), seems pointless? 2022-01-21 17:45:26 -06:00
Ben Loftis
f62c4908e0 trigger_ui: implement direct-Jump actions for the slot properties (left&right FA) 2022-01-21 17:45:26 -06:00
Ben Loftis
a23f3aec50 trigger_ui: implement direct Jump actions for Cues (rows) 2022-01-21 17:45:26 -06:00
Robin Gareus
fc9f796257 Revert "Process-lock is required when changing processors"
This reverts commit 0a213e71b3.
which needs a better solution to prevent deadlock in case the lock is
already taken.
2022-01-22 00:31:54 +01:00
Robin Gareus
0a213e71b3 Process-lock is required when changing processors
This is somewhat unfortunate, since session.cc also takes the
lock shortly afterward to call ->ensure_io()

This should be consolidated before release.
2022-01-22 00:06:13 +01:00
Paul Davis
2fa8c7cd42 triggerbox: if any cues were recorded, remove all existing cue markers in transport-roll-range before adding new ones 2022-01-21 13:08:47 -07:00
Paul Davis
fd3ddce80a do not play existing cue markers while recording cues 2022-01-21 10:55:55 -07:00
Paul Davis
e14acfc07d prevent multiple cue markers at the same location 2022-01-21 10:55:55 -07:00
Paul Davis
76f4813ee6 triggerbox: experimentally enable cue recording by default 2022-01-21 10:55:55 -07:00
Paul Davis
b023b97538 triggerbox: flush newly recorded cue markers back to RT context 2022-01-21 10:55:55 -07:00
Paul Davis
d830800ed9 triggerbox: add flush-at-transport-stop from recorded cues to locations 2022-01-21 10:55:54 -07:00
Paul Davis
8d1684e1f7 triggerbox: store cue bangs in process thread when discovered 2022-01-21 10:55:54 -07:00
Paul Davis
9abf6bc260 triggerbox: introduce member var to control cue recording 2022-01-21 10:55:54 -07:00
Paul Davis
f63c049d87 triggerbox: add struct and ringbuffer for recording cues 2022-01-21 10:55:54 -07:00
Ben Loftis
d50e854b05 Rulers: restore theme-ing of ruler bars (reverts much of 60cb) 2022-01-21 11:30:14 -06:00
Ben Loftis
9239d8af06 Ruler Marker: replace some padding in Location marks, to accommodate a selected marker 2022-01-21 10:13:15 -06:00
Ben Loftis
f6813e0749 Ruler Markers: customize the menus for Cue Marks, including a way to change the Cue-ID 2022-01-21 10:13:11 -06:00
Ben Loftis
48c5974b2b Ruler Marker: watch for -my- location cue-id to change 2022-01-21 10:07:48 -06:00
Ben Loftis
c9b5db6dee Mini-Timeline: watch for -any- cue marker to change 2022-01-21 10:07:01 -06:00
Ben Loftis
4bc3230756 Locations: provide a signal for when a single Location's Cue-ID changes 2022-01-21 10:06:18 -06:00
Ben Loftis
85f05eaca5 Ruler Markers: only listen to -this- marker (NameChanged), not all of them (name_change) 2022-01-21 10:04:04 -06:00
Ben Loftis
11bb40a06e Ruler Markers: for now, ignore Cue Markers in various Range operations 2022-01-21 10:02:18 -06:00
Ben Loftis
540a85cbbd trigger_ui: remove unused menu entry 2022-01-21 07:58:20 -06:00
Paul Davis
f16c99ddb8 remove Other/Any follow action types (GUI edition) 2022-01-20 18:56:07 -07:00
Paul Davis
5ade0927dd remove Other/Any follow action types 2022-01-20 18:56:07 -07:00
Paul Davis
fdedbe24ec remove Next/Prev (Live-style) follow action types (GUI edition) 2022-01-20 18:56:07 -07:00
Paul Davis
b94c5dcec7 remove Next/Prev (Live-style) follow action types 2022-01-20 18:56:07 -07:00
Paul Davis
38a603910a remove FollowAction type "QueuedTrigger" (GUI edition) 2022-01-20 18:56:07 -07:00
Paul Davis
bbdfc5e777 remove FollowAction type "QueuedTrigger" 2022-01-20 18:56:07 -07:00
Robin Gareus
dd159b0841 Use default fg on bg (white on black) for tooltips 2022-01-21 02:52:10 +01:00
Robin Gareus
4020561389 Fix TB DnD (only check data-type when dropping regions) 2022-01-21 02:14:28 +01:00
Ben Loftis
60cbe57a6e Marker Rulers: changes to match mini-timeline aesthetic
Highlight ruler lanes when you enter, instead of showing many lines
2022-01-20 18:59:21 -06:00
Ben Loftis
16c809986d Mini Timeline: Add Circular Cue Markers; various cleanup and pixel-pushing tweaks 2022-01-20 18:59:21 -06:00
Paul Davis
90e6107972 triggerbox: left follow action == None means "no follow action at all" 2022-01-20 14:15:45 -07:00
Paul Davis
8ddf057553 triggerbox: fix enum (compiler should have noticed this) 2022-01-20 14:15:25 -07:00
Paul Davis
b884f7c534 triggerbox: do not use follow length when (left) follow action is None 2022-01-20 14:03:40 -07:00
Paul Davis
68c87c3f29 triggerbox: fix various errors caused by not setting transition_bbt
In cases where no quantization is done, transition_bbt was not set,
and this led to expected_end_sample being incorrect.
2022-01-20 13:57:47 -07:00
Robin Gareus
76c62139c8 Fix tiny memory leak when pasting multple files 2022-01-20 21:55:04 +01:00
Paul Davis
02f4daffe4 fix inconsequential debug-trace garbage value report from clang 2022-01-20 13:40:49 -07:00
Paul Davis
ee5d3da929 fix inconsequential (unlikely) memory leak from clang 2022-01-20 13:40:49 -07:00
Robin Gareus
97439d8777 Flip option, disable compile-database by default 2022-01-20 20:13:46 +01:00
Robin Gareus
f8564ba4df Clean up header file 2022-01-20 20:13:46 +01:00