Paul Davis
e975fc5b7d
slightly more debug information when starting local tempo scope
2025-10-20 14:58:16 -06:00
Paul Davis
12f40234ef
fix thinko when searching for a segment descriptor by TimelineRange
2025-10-20 14:58:16 -06:00
Paul Davis
b460ce6d6a
fix repeated thinkos during deserialization of SegmentDescriptors
2025-10-20 14:58:16 -06:00
Paul Davis
e8cd0af1cc
remove Region::_tempo and Region::_meter; use Source-level data instead
2025-10-20 14:58:16 -06:00
Paul Davis
6d92be80c1
do tempo estimation within AudioSources, after capture and upon import
...
we read 10 seconds from the middle of the data; not infallible but a reasonable
first pass at a heuristic.
2025-10-20 14:58:16 -06:00
Paul Davis
40f6859905
triggerbox: use the appropriate audio tempo estimating function
2025-10-20 14:58:16 -06:00
Paul Davis
1a5f369bc7
refactor audio data estimation utility code to provide region and source versions
...
this also fixes a new/delete vs new/delete[] buglet caught by ASAN
2025-10-20 14:58:16 -06:00
Paul Davis
efca55642f
mark_streaming_write_completed() should still be called on non-writable sources
...
the sources have already been marked immutable before DiskWriter calls
mark_streaming_write_completed().
2025-10-20 14:58:16 -06:00
Paul Davis
c1f568b1f3
fix typo/cut-n-paste error in SegmentDescriptor duration assignment
2025-10-20 14:58:16 -06:00
Paul Davis
4b5efcee86
add a replace argument to Source::set_segment_descriptor()
...
This allows for a segment descriptor to be replaced, which previously was not
possible
2025-10-20 14:58:16 -06:00
Franke Burgarino
9ee9e6d139
Properly legalize new source filenames
2025-10-17 12:27:04 -05:00
Robin Gareus
6e62c49749
Fix master/monitor auto-connect
...
When initially using a different backend, the engine does
not yet have a reference to the Session, and main busses
were not connected.
2025-10-15 18:09:45 +02:00
John Emmas
2f9f86b7d3
Fix improperly terminated parameter list
2025-10-13 09:56:23 +01:00
Robin Gareus
35b5d156c3
Fix StaffPad compilation/linking with gcc-15.2
2025-10-11 23:34:27 +02:00
Robin Gareus
f19e7c9ac9
Fix pane constraint calculation for > 2 child widgets
2025-10-11 22:22:44 +02:00
Robin Gareus
882ed91f2f
Fix pane allocation and size constraints
...
Correctly divide the fractions of *available* requested child-space.
This fixes issue with Trigger Page bottom attachment not showing
Frame content.
When calculating constraints the divider width/height was ignored.
When setting child allocation, the divider girth was only
subtracted *after* the first child, and iteratively subtracted
after each subsequent child widget.
This over-allocated the first child and later child widgets
were increasingly too small (factor * remaining).
2025-10-11 22:22:17 +02:00
Robin Gareus
b1841f9857
Only warn when Frame allocation is smaller than requested size
...
see also a8092c1782
2025-10-11 18:23:40 +02:00
Robin Gareus
c780d7c056
Don't blindly enforce a min attachment width/height
...
This also fixed a copy/edit type. enabling PaneBottom
set a min-width to content_right_pane :)
2025-10-11 18:13:45 +02:00
Robin Gareus
f12a521a94
Allow builds with recent msys2/mingw
...
Thanks to EZ4Stephen
https://discourse.ardour.org/t/show-32-tracks-while-recording/112102/7
2025-10-11 15:02:57 +02:00
Robin Gareus
f9b1de355d
VST3: initialize bus and speaker arrangement during instaniation
2025-10-09 23:44:35 +02:00
Paul Davis
bea740e634
Evoral testing requires Temporal::reset()
...
We might roll superclock initialization into Temporal::init()
2025-10-09 10:58:57 -06:00
Robin Gareus
29ae1d994d
Remove not implemented st-pitch
2025-10-09 00:02:10 +02:00
Robin Gareus
4f4a62564a
Update TimeFX settings and dialog for StaffPad inclusion
...
Also rubberband is required these days and USE_RUBBERBAND
not optional.
2025-10-09 00:02:06 +02:00
Robin Gareus
ada43548aa
Implement StaffPad filter
2025-10-09 00:01:51 +02:00
Robin Gareus
6507bcd93b
Add StaffPad library, thanks to Audacity
2025-10-09 00:01:26 +02:00
Robin Gareus
4ef4288b2a
Really fix windows builds (amend previous commit)
2025-10-08 00:58:31 +02:00
Robin Gareus
d97ccc6737
Fix Windows builds (amend 94a4f6b35)
2025-10-08 00:21:37 +02:00
Franke Burgarino
2b2021d5e0
MCU: show warning message for empty views
...
If the user attempted to access a view with no tracks in it, it would
show all blank screens. Now, it will show a temporary warning message and return
to the previous view.
2025-10-07 16:46:50 -05:00
Robin Gareus
a9a98ab11a
Amend b2a86297, fix crash when closing session with running engine
2025-10-06 21:36:26 +02:00
Robin Gareus
b2a862971b
Mark session dirty when changing external connections
2025-10-06 19:48:01 +02:00
Robin Gareus
94a4f6b350
Implement restoring hardware<>hardware connections for internal backends
2025-10-06 19:47:30 +02:00
Franke Burgarino
833d4142b1
MCU: add iCON V1-M support
2025-10-02 17:10:07 -05:00
Robin Gareus
6d9df568fe
LV2: nicely forma Atom debug messages, use prefix
2025-10-02 21:20:08 +02:00
Robin Gareus
3213167188
LV2: don't hide bypass/enabled port..
...
.. and remove non-standard, deprecated bypass/enable extension
2025-10-02 20:00:13 +02:00
Robin Gareus
1d8ebee6d0
LV2: add note about LV2 UI updae freq (NO-OP)
2025-10-02 19:56:52 +02:00
Robin Gareus
5d59454f6a
Prepare support for read-only plugin properties
2025-10-02 04:55:34 +02:00
Robin Gareus
c529260137
Set default value for numeric plugin properties
2025-10-02 04:54:48 +02:00
Robin Gareus
9320a51c54
Remove redundant calls to set params of replicated plugins
...
This already happens in:
PlugInsertBase::PluginControl::actually_set_value
and
PlugInsertBase::PluginPropertyControl::actually_set_value
2025-10-02 02:00:14 +02:00
Robin Gareus
ae6900d8af
Catch up with plugin property changes (LV2/JUCE)
...
When a user changes a value in the Plugin GUI, JUCE informs the
DSP behind the host's back, and later informs the host from the
DSP (realtime) thread, by sending patch:Set messages from the DSP
back to the host/UI.
This is really bad practice, particularly since the plugin does
no even use LV2 instance access, or LV2 data access features.
2025-10-02 01:29:45 +02:00
Robin Gareus
e974a861ea
LV2: add debug option to dump plugin/UI Atom communication
2025-10-01 22:52:07 +02:00
Robin Gareus
73268c9fe7
Add LV2 Bool variant support
2025-10-01 22:11:28 +02:00
Franke Burgarino
717d6b4ee2
Remove debugging statements
2025-09-29 09:44:29 -05:00
Robin Gareus
e0a6b64695
NO-OP: sort and group classkeys
2025-09-29 16:23:23 +02:00
Robin Gareus
edab074749
Amend previous commit (fix Windows Lua bindings)
2025-09-29 16:19:58 +02:00
Robin Gareus
96c734686e
Fix Windows builds, add required classkeys see 73b903fd03
2025-09-29 16:07:01 +02:00
Robin Gareus
dec0e2dae8
Sort busses in new-aux menu by presentation-info
...
https://discourse.ardour.org/t/ordenation-for-aux-send-buses/112251
2025-09-29 00:49:49 +02:00
Robin Gareus
a0cd43132b
Prevent issues when changing processors while recording #10017
...
Processor changes trigger configure_io() which resulted in a
call to reset_write_sources(), which is a disaster while recording.
This allows adding plugins while recording, and prevents adding
any plugins before the disk-writer that change the channel-count
while recording, or changing strict-i/o to the same effect.
2025-09-29 00:03:30 +02:00
David Robillard
625ad2af77
Fix loading LV2 channel numbers from standard/common port groups
...
This code only worked for port groups that themselves (the specific group
instance) listed their designations. This worked with LSP, which redundantly
duplicates the elements from the group's class for some reason, but not with
other plugins like MDA which simply refer to a standard group like
<http://lv2plug.in/ns/ext/port-groups#StereoGroup >.
This does require the specification data to be loaded from the LV2 path (maybe
why LSP does that?), but that's generally expected for anything LV2 to work.
2025-09-27 21:32:07 -04:00
Franke Burgarino
c2eecac3b2
Update strum logic
...
Strumming now happens to notes that start at the same time, based on
note value. Additionally, rather than moving notes, the start times get
moved so that they end at the same time. Any notes that get cut down to
nothing (or less) are given a length of one tick while maintaining the
same end time.
2025-09-26 16:26:15 -05:00
Robin Gareus
215d59e0e6
RegionFX: handle property and non-automatable controls
...
This fixes crashes in recent LSP.lv2 and similar plugins.
2025-09-26 20:27:56 +02:00