Commit graph

41168 commits

Author SHA1 Message Date
Franke Burgarino
7d70dc9384 MCU: implement 'available' parameter list in EQSubview 2025-08-12 17:00:56 -05:00
Robin Gareus
4b4cd5710f
Build Processor Box controls on demand
This significantly speeds up refilling the processor box.
The expensive part is creating HSliderControllers (actually
Gtk::SpinButton) which happened every time for a processor
change, for each plugin's control.
2025-08-12 22:02:32 +02:00
Franke Burgarino
0af47ff755 MCU: add more comp/gate controls 2025-08-12 13:27:19 -05:00
Robin Gareus
a067e725d9
Skip Route Plugin Pin Dialog refill when it's not needed 2025-08-12 19:48:28 +02:00
Robin Gareus
b14ce31372
Consolidate rt processor-changed signal emission
Prefer a single signal and bit flags, instead of individual signals.
This allows to call resort_route() at most once (if at all for
certain changes).

Notably Mixbus comp/gate/eq type changes can use NoProcessorChange
to only request a GUI update.
2025-08-12 19:48:28 +02:00
Franke Burgarino
e734acfa6b MCU: fixed dynamics subview scrolling bug
switching to a dyn type with less parameters can no longer place you past the
last parameter
2025-08-12 11:11:05 -05:00
Franke Burgarino
588fbee13b MCU: move creation of dynamics subview 'available' parameters list to seperate function
'available' was being created and deleted every time setup_vpot was
called. now it is only created when making the subview or switching the
dynamics type
2025-08-12 11:11:05 -05:00
Paul Davis
92267ec7db new scoped tempo maps mean we can use scope macro everywhere, for consistency 2025-08-12 07:54:11 -06:00
Paul Davis
b205c0bc4b scoped tempo maps: logic fixes and some comment-documentation 2025-08-12 07:53:30 -06:00
Paul Davis
2fc669964e Revert "A new class ('ScopedTempoMapOwner') exposes functions which need to be visible outside of libtemporal"
This reverts commit d3a15b11ba.

This arrived at an awkward time as ScopedTempoMapOwner was being rearranged at
the source level. It will be reapplied in a subsequent commit.
2025-08-12 07:15:17 -06:00
John Emmas
d3a15b11ba A new class ('ScopedTempoMapOwner') exposes functions which need to be visible outside of libtemporal
(and since there's no 'scope.cc', libtemporal itself needs to #include scope.h for those symbols to get exported)
2025-08-12 13:19:24 +01:00
Robin Gareus
4490720afa
Fix optimized builds (stacktrace)
This would require a `#include "pbd/stacktrace.h"` but
that stracktace should not have been comitted in the first
place.
2025-08-12 12:32:51 +02:00
Robin Gareus
2f234148b7
Update recorder UI directly when DPI/scaling changes 2025-08-12 05:31:03 +02:00
Paul Davis
3aba12c90c providing region tempo/meter editing in region properties 2025-08-11 21:29:48 -06:00
Paul Davis
63f0ddb064 finish registration of region tempo/meter properties 2025-08-11 21:29:21 -06:00
Paul Davis
ec61deaa8a macro to stop local tempo map code from doing anything 2025-08-11 18:05:24 -06:00
Robin Gareus
c546082f22
Downgrade "unknown automation" error to warning
It may not be an error to begin with and there's nothing a
user can do about it, anyway.
2025-08-12 01:16:23 +02:00
Paul Davis
a2c0183cbc temporal: fix up some logic relating to scoped tempo maps (GUI) 2025-08-11 15:41:34 -06:00
Paul Davis
dd41fddcad temporal: fix up some logic relating to scoped tempo maps 2025-08-11 15:41:34 -06:00
Paul Davis
023290b99d temporal: add sanity check to TempoMap::fetch()
Threads should never call ::fetch() if they have a local tempo map in
use.
2025-08-11 15:41:34 -06:00
Paul Davis
478dd72fb0 moved scoped tempo map from GUI to libtemporal (gui) 2025-08-11 15:41:34 -06:00
Paul Davis
1ecbdf164d moved scoped tempo map from GUI to libtemporal 2025-08-11 15:41:34 -06:00
Robin Gareus
582a1e8186
Fix timecode update after locate for demo version
ref. 1d48648a73
2025-08-11 16:00:13 +02:00
Paul Davis
1136ba4c99 let's (maybe) inline some of the scoped tempo stuff 2025-08-10 21:03:32 -06:00
Paul Davis
2312187070 sort-of-a-solution for local TempoMap context in EditingContext 2025-08-10 20:25:59 -06:00
Robin Gareus
5c8c7c7814
Revert "macOS: allow Ardour to load unsigned plugins"
This reverts commit 12e846c3e9.
because it breaks notarization (and we already had that entitlement)
2025-08-10 17:41:28 +02:00
Paul Davis
673ce0f66f defer regionmap creation in clip editors to region 2025-08-10 07:55:39 -06:00
Paul Davis
ae6acb7f42 regions can create their own tempo map 2025-08-10 07:55:39 -06:00
Paul Davis
ea4737079d region tempo and meter are optional (gui) 2025-08-10 07:55:39 -06:00
Paul Davis
832683cb01 region tempo and meter are optional 2025-08-10 07:55:39 -06:00
Robin Gareus
8f9018ceda
Don't show hidden tracks in the editor-mixer
If the first track in a given session was hidden, it was still
shown in the editor-mixer after session load.
2025-08-10 14:04:55 +02:00
Paul Davis
aaaf25ad01 fill region editor tempo/meter entries and respond to changes
No editing yet
2025-08-09 20:47:58 -06:00
Paul Davis
7ff9460d7c actually define Region tempo/meter properties 2025-08-09 20:47:38 -06:00
Paul Davis
95006c085c add set_tempo/set_meter() methods to Region 2025-08-09 20:16:54 -06:00
Paul Davis
89a26e224a add properties for region tempo and meter 2025-08-09 18:41:53 -06:00
Paul Davis
ad1011d724 basics of tempo & meter fields in region editor(s) 2025-08-09 17:47:56 -06:00
Paul Davis
af5ab40bf2 use DEBUG::TempoEstimation 2025-08-08 23:34:31 -06:00
Paul Davis
217890cf85 add DEBUG::TempoEstimation to libardour 2025-08-08 23:29:55 -06:00
Paul Davis
4586b39e8b add a method to compute tempo & meter for an audio source (not used yet) 2025-08-08 23:11:59 -06:00
Paul Davis
ff648b6720 cue editor: fix local tempo scope and use region tempo map 2025-08-08 22:46:16 -06:00
Paul Davis
577cdd5f61 MIDITrigger::get_segment_descriptor() does something sensible with Region tempo/meter 2025-08-08 22:26:35 -06:00
Paul Davis
be913373cb give MIDIRegion a tempo/meter based on their SMF or the SMF standard (120, 4/4) 2025-08-08 22:26:04 -06:00
Paul Davis
cec3db54f0 refactor AudioTrigger::estimate_tempo() into ARDOUR::estimate_audio_tempo() 2025-08-08 17:52:59 -06:00
Franke Burgarino
c59dddfdae MCU: add scrolling in eq subview 2025-08-08 16:57:49 -05:00
Franke Burgarino
900706320c MCU: change 'Strip::notify_eq_type_changed()' to 'Strip::notify_subview_type_changed()' since it applies to dynamics as well 2025-08-08 16:57:49 -05:00
Franke Burgarino
947223fdfb MCU: rename/reorder dynamics subview controls 2025-08-08 16:57:49 -05:00
Franke Burgarino
c61cbe8b02 MCU: move filter controls from dynamics subview to eq subview 2025-08-08 16:57:49 -05:00
Paul Davis
20269df975 Regions get their own tempo and meter
This defaults to the usual 120bpm 4/4 but is also not used anywhere yet
2025-08-08 15:46:17 -06:00
Robin Gareus
f66207f2a2
Replace git.ardour link with github
git.ardour.org no longer allows to show individual commits
or source files (thanks to LLM scrapers trying to get them all).
2025-08-08 23:36:32 +02:00
Paul Davis
56647acc25 add local tempo scope calls to CueEditor, PianoRoll and AudioClipEditor 2025-08-08 15:03:41 -06:00