Paul Davis
b6f1ff336e
when adding a tempo/meter at end of map, no reset necessary
...
Also, the reset would malfunction which really ought to be fixed
2025-07-30 22:18:12 -06:00
Paul Davis
59f58946a9
correct math for setting SMF-imported tempo/meter positions
2025-07-30 22:17:33 -06:00
Paul Davis
bda4d195f1
remove erroneous debug line
2025-07-30 16:04:00 -06:00
Paul Davis
c9e4c405e1
followup to previous commit, enabling AudioTriggers to be cleared and then recorded
2025-07-30 15:28:46 -06:00
Paul Davis
7088022401
triggerbox: fix up slot clearing so that a cleared slot is recordable
...
There may be a race condition here: clearing a slot just before it
is being chosen in another thread as the next to run.
2025-07-30 15:28:46 -06:00
Robin Gareus
d1fd5452c9
Amend 0742fd8563, check if click_gain() is not null
2025-07-30 04:40:04 +02:00
Paul Davis
0b0dde46e0
waveview is the only type of canvas item that needs prepare for render
...
Also, virtual keyword in derived classes is redundant
2025-07-29 18:16:35 -06:00
Paul Davis
6c499b180b
canvas: add a method to prevent extensive item coordinate math during ::prepare_for_render_children()
...
Also, auto-ify a loop in Item::prepare_for_render_children()
2025-07-29 18:16:35 -06:00
Paul Davis
9f49e6379d
ArdourDropdown: new utility methods
2025-07-29 18:16:35 -06:00
Paul Davis
5b7b3860b8
NO-OP: function call whitespace niggle
2025-07-29 18:16:35 -06:00
Paul Davis
458c54990b
gtkmm2ext: change action registration functions to return ToggleAction or RadioAction
2025-07-29 18:16:35 -06:00
Paul Davis
ddcb6fe3a6
add operator== for TriggerReference
2025-07-29 18:16:35 -06:00
Paul Davis
922b961672
auto-fication of a loop in Canvas::Item plus some variable renaming
2025-07-29 18:16:35 -06:00
Franke Burgarino
0fc28d3872
MCU: update controls when EQ type changes
2025-07-29 23:11:20 +02:00
Robin Gareus
0742fd8563
OSC: fix crash when querying master-status on systems w/o metronome
...
This happens when master-feedback is enabled and /refresh message
is received and the metronme is disabled at compile-time
(eg. LiveTrax)
2025-07-29 23:08:51 +02:00
Robin Gareus
d82861954d
Console 1: update API to match recent Mixbus
2025-07-29 06:16:12 +02:00
Robin Gareus
1ca53a99d9
Lua: special case non-rt safe bindings
...
* add bindings to save track-template
* make some non-rt safe bindings only available to UI scripts
2025-07-28 15:20:28 +02:00
Robin Gareus
91bd8e63bf
Commitibus omnibus: API mutare
2025-07-28 15:10:38 +02:00
Robin Gareus
00efab1264
Amend 109c3edb42, require JACK-2 headers to build
2025-07-28 15:02:59 +02:00
Robin Gareus
0759c34b7d
VST3: Allow IRunLoop to query itself
...
For whatever reason renoise_redux.vst3 requires this, and
otherwise complains that the host does not implement IRunLoop
interface, which the plugin already successfully retrieved
to make this query in the first place.
2025-07-24 13:48:19 +02:00
Hoger Dehnhardt
361d0374dc
Suppress the mapping of unititialized controls in setup dialog
2025-07-22 21:59:43 +02:00
Robin Gareus
280e30ade9
NO-OP: whitespace and indent
2025-07-21 15:17:24 +02:00
Hoger Dehnhardt
710d01a63f
Console1: Expose Mixbus SSL-EQ Q Control
2025-07-21 15:13:09 +02:00
Robin Gareus
91ea44e24e
Remove Mixbus special case in upstream Ardour
2025-07-18 16:49:39 +02:00
Paul Davis
7be70d658b
Revert "refactor pianoroll/cueeditor/audioclipeditor to share code and do the right stuff (compile success stage)"
...
This reverts commit 01beb00a5f .
2025-07-17 22:38:05 -06:00
Paul Davis
01beb00a5f
refactor pianoroll/cueeditor/audioclipeditor to share code and do the right stuff (compile success stage)
2025-07-17 22:36:25 -06:00
Robin Gareus
74d7bf407a
Add roll-will-loop option (as alternative to loop-is-mode)
...
This is mainly for the benefit of Mixbus (this option is not [yet]
available for Ardour, except for power users manually editing
the config).
This option is ostensibly exclusive with loop-is-mode, but an
enum seems not appropriate at this point in time.
2025-07-17 23:00:56 +02:00
Ben Loftis
ae56743b7d
Tapereel icon should follow fg_color, not use hardcoded red
2025-07-16 16:39:38 +02:00
Robin Gareus
3cc13c1f1e
Consolidate ArdourButton layout and size for derivative projects
2025-07-16 13:56:43 +02:00
Paul Davis
7cfc5d3d7d
amend 0edba1f559 to restore algorithm design
...
The issue here was caused by 39949e778 which removed a reverse iteration
over the list of regions in order to get top-first ordering.
2025-07-14 10:21:44 -06:00
Paul Davis
b153add0ef
enhanced DEBUG_TRACE messages for MIDI playlist rendering
2025-07-14 09:12:22 -06:00
Paul Davis
4b834d11b3
autofication
2025-07-14 09:12:07 -06:00
Paul Davis
0edba1f559
fix MIDI playlist rendering with opaque regions
...
regions are sorted lowest-first, not highest-first.
2025-07-14 09:11:42 -06:00
Paul Davis
ee4b68fc80
when clip recording, we are always monitoring input regardless of timeline rec modes
2025-07-13 21:26:26 -06:00
Paul Davis
f82a755a22
NoCamelCase method names (libs)
2025-07-12 10:51:46 -06:00
Robin Gareus
99c1f50a72
Really remove gtk+ option (see also 1e28ee9cc9)
...
After patching gtk/ytk to add touch support and macOS rendering,
upstream gtk+2 is no longer an option
2025-07-06 15:20:20 +02:00
Paul Davis
ea4616913c
cocoa: experimentally, redraw entire window after deminimization
2025-07-05 08:34:08 -06:00
Robin Gareus
a0ba6e3dfb
Cache BundleChannel nchannels, allow lock-free calls
2025-07-01 17:46:17 +02:00
Paul Davis
02abf956d7
a better way to build ArdourDropdowns from Actions
2025-06-25 22:17:53 -06:00
Paul Davis
66a8776f98
fix InternalSend (and InterntalReturn) to allow fade out/MIDI mute
...
previously, as soon as the Send is disabled, it would short-circuit ::run(),
preventing the fade to zero to take effect. Now, the send will run until the
effective gain reaches zero, and the return will collect data from it until it
is fully deactivated.
2025-06-19 13:50:37 -06:00
Paul Davis
464ea0d31f
fix Amp to send MIDI mute when the gain control is set to zero
...
Do not send MIDI mute from ::apply_gain(), which is too general and can end up
resending MIDI mute messages when the owner is muted.
2025-06-19 13:38:39 -06:00
Paul Davis
6b675bac18
for MIDI mute block in Delivery, add ALL_NOTES_OFF
2025-06-19 13:37:53 -06:00
Paul Davis
fc24c59eb9
refactor midi mute buffer sizing into a separate method for Delivery
2025-06-19 13:37:30 -06:00
Paul Davis
e45c2f616a
modify Delivery::maybe_merge_midi_mute() to allow forcing the merge
...
In an internal send, this may be called with _current_gain not yet
at zero. So provide an extra argument to force the merge.
2025-06-19 13:36:50 -06:00
Paul Davis
4bf1202493
tiny optimization tweak and auto-fication for Amp::apply_simple_gain()
2025-06-19 09:13:25 -06:00
Paul Davis
8b09becf1d
fix the way mute operates for MIDI tracks
...
our policy is that "mute works on outputs", which means that mute should have
no effect on what an instrument plugin does. However, MidiTrack::act_on_mute()
used to inject sustain=0 messages into the data flow, which would affect
the instrument plugin(s) in the track.
now, MidiTrack::act_on_mute() simply notifies all Delivery objects in the track
that a MIDI mute is needed via a channel mask. The Delivery objects notice this
during their ::run() method, and deliver the required MIDI events to their
output ports.
There is still a potential issue that Amp objects which notice they have been
muted also send a similar set of messages. This needs more investigation and
possibly other changes. But this commit allows a sustained note to return after
the track is muted midway through it.
2025-06-19 08:03:43 -06:00
Paul Davis
919ce6309c
auto-ify the main processor loop in process_output_buffers()
2025-06-19 08:03:43 -06:00
Paul Davis
fc692f5680
Fix for timepos_t::earlier() - superclock_t vs.samplepos_t confusion
2025-06-17 14:03:43 -06:00
John Emmas
b795d36cd3
Avoid using 'boost::aligned_storage' which is known to be problematic in MSVC builds
...
MS initially believed the runtime issues might be fixable in VS2015 but in fact, Boost's alignment strategy and Microsoft's alignment strategy just turned out to be incompatible:-
https://www.boost.org/doc/libs/1_65_0/libs/type_traits/doc/html/boost_typetraits/reference/aligned_storage.html
2025-06-17 09:02:24 +01:00
Paul Davis
1230e1258d
code refactoring and action name handling to make follow-playhead work in multiple editing contexts (libs)
2025-06-15 21:18:06 -06:00