13
0
Commit Graph

21360 Commits

Author SHA1 Message Date
dd4a1a6d73
Set thread priority relative to backend
This also removed direct calls to backend real_time_priority
for good measure.
2024-09-28 04:15:39 +02:00
395833e4f8
Always use PBD API for thread priorities 2024-09-28 03:58:48 +02:00
0b5a197f76
NO-OP: whitespace 2024-09-28 03:16:57 +02:00
d089f38481
Use config variable to set IOTask thread policy 2024-09-28 03:16:54 +02:00
dcd79f3135
Debug Backend thread creation 2024-09-28 03:16:50 +02:00
aeb4f925c6
PBD pthreads: allow unlimited stacksize 2024-09-28 03:16:45 +02:00
e8c67408bb
Impose stack limit on backend threads (freewheeling, MIDI poll) 2024-09-28 03:16:42 +02:00
e8445d13ec
Require thread name to be passed to PBD::Thread and store thread 2024-09-28 03:16:30 +02:00
88a24ae8e5
Let PBD::Thread set thread-name 2024-09-28 03:16:07 +02:00
538a8cbccc
Consolidate calls to `pthread_create' (2/2) 2024-09-28 03:16:02 +02:00
8d3ebde60e
Distinguish Threads and ThreadName debugging
This also allows for -DThread to enable both.

We celebrate the 128th debug bit and look forward to
the next 64!
2024-09-28 03:15:36 +02:00
c4fdd5356c
Enable debugging for stored threads 2024-09-28 03:14:16 +02:00
301777e7fe
Remove cruft 2024-09-27 18:03:11 +02:00
71a3161252
Error handling for 3751d20ce 2024-09-27 17:20:42 +02:00
3751d20ce9
Use dedicated thread to start export timespans #9798
This addresses an issue with creating a one-shot thread
directly from the realtime callback, which can be problematic
on Windows.
2024-09-27 06:00:15 +02:00
d8e4e7b259
Fix calculating intersection of waveform rectangle
see also 68eb63e0c8
2024-09-27 02:54:35 +02:00
9945d7721f
Allow to investigate I/O thread policy
see
https://discourse.ardour.org/t/ardour-8-7-unable-to-connect-to-audio-backend/110774/10
https://discourse.ardour.org/t/ardour-8-7-x-run-issues/110767/2
2024-09-27 01:41:40 +02:00
6cc54aa1b0
Fix playhead moving beyond loop range
When some other transport related session event (anything that
requires non_realtime_work_pending, e.g. PostTransportOverWrite)
coincides with SessionEvent::AutoLoop, the auto-loop event
was removed from the main event queue and executed as one-shot
immediate event.

While looping the AutoLoop event needs to remain on the main
event queue.
2024-09-26 16:26:05 +02:00
dc92ed1bc9
Fix Pre-Fader RegionFx when looping 2024-09-26 04:39:19 +02:00
180e90b81a
Only call non_realtime_locate() when locating
`butler_transport_work()` may be called for various reasons,
notably PostTransportOverWrite. At that point in time the
transport may still be rolling or stopping with rtloc already
set.

This can cause DR::Underruns since seek clear the entire
disk reader buffer.
2024-09-26 03:45:24 +02:00
4f33105ae0
Process PostTransportOverWrite after all
This is needed to properly decrement "should_do_transport_work".
After a seek the DR:_pending_overwrite flag will have been
cleared, so not much extra work happens here.
2024-09-26 03:25:13 +02:00
e1f465a952
NO-OP: improve butler and disk-i/o debug messages 2024-09-26 03:25:07 +02:00
75e6a77c3e
Fix another debug message 2024-09-26 02:26:30 +02:00
9d0415ba04
Waveview: fix visual jitter when trimming or splitting regions
The left edge of a region on the the editor is rounded to be
on a pixel. When zoomed out, the position corresponding to that
pixel is not usually identical to the region's position().

We need to correct for this as best as possible, while keeping
peaks aligned to pixels.
2024-09-26 02:21:24 +02:00
68eb63e0c8
Waveview: fix rounding, span entire region rectangle
Previously samples at the end could end up being cropped,
when the Waveview is rendered using an offset.
2024-09-26 02:21:24 +02:00
b28090c64c
Peakdata: start striding at consistent offsets 2024-09-26 02:21:24 +02:00
5d65d7f051
Peakdata: correctly set peaks of left and right end 2024-09-26 02:21:23 +02:00
18e0cba1cb
Fix underruns when looping/locating and changing region content
Previously loop-wrap around asked the butler to perform
a unnecessary seek operation next time it is summoned.

If the butler is then summoned for a PostTransportOverWrite
event, the seek causes a DR::Underrun.
2024-09-25 20:06:08 +02:00
5af023c70b
Fix some debug messages 2024-09-25 20:06:08 +02:00
3d1c414a94 initialize member variable 2024-09-24 14:52:06 -06:00
0e28620a7a prevent Session::StateSaved being emitted when doing save-as with no switch-to
The signal would be emitted while the session was temporarily renamed,
making it appear that we had switched to the new session, despite instructions
not to do so. We had not actually done so, but the saved-as name would show up
on window titles.
2024-09-24 14:50:35 -06:00
72cac07ae7
Generic MIDI: do not send touch events for all mapped controlers
Previously a start-touch was sent for any bound MIDI
Controllable on each incoming MIDI Control event.
2024-09-24 16:11:00 +02:00
d3f536a7ff
Remove unused variable 2024-09-24 16:10:59 +02:00
4024a4354c region grouping: Overdubbing in non-layered mode was assigning wrong groups 2024-09-23 16:35:04 -05:00
f75f5b0ded add option to name new MIDI tracks from SMF with just the SMF track name (libs edition) 2024-09-22 09:49:55 -06:00
9c64e7d141
Fix libhid API builds with recent gcc/glib `
Since glibc 2.10 `wcsdup` and `strtok_r` require `_POSIX_C_SOURCE`

(see also da520ce 4b8b5ac)
2024-09-15 12:00:12 +02:00
Fabio Pesari
f94bde59d7
Fix for Boost 1.8.5
Recent boost prevents calls to `get_child` with temporary
default values.
2024-09-15 11:43:52 +02:00
1f70d54989 avoid call of a null function pointer 2024-09-13 08:24:04 -06:00
79e78394c2 track modal window show/hide, not realize/finalize 2024-09-13 16:02:59 +02:00
ab533c38a3
LV2 fix a tiny memory leak introduced in c0b61d5a28 2024-09-11 05:31:27 +02:00
1737b48aec Revert "try to add some debugging for macOS modal/menu handling"
This reverts commit c5751db473.
2024-09-10 16:34:16 -06:00
bf6ce27b03 Revert "try to fix up previous commit"
This reverts commit 04305774cc.
2024-09-10 16:34:03 -06:00
04305774cc try to fix up previous commit 2024-09-10 13:48:59 -06:00
c5751db473 try to add some debugging for macOS modal/menu handling 2024-09-10 13:09:13 -06:00
e8644654c2
Prepare to filter incoming LTC 2024-09-10 18:25:06 +02:00
cd6dca6063
Allow to query Biquad coefficients 2024-09-10 18:25:02 +02:00
c0b61d5a28
Fix LV2 optional connect port logging #9790 2024-09-09 16:04:35 +02:00
75d2b46ded
Add Lua bindings to query MIDI SysEx and PatchChanges 2024-09-08 22:59:09 +02:00
3b5a6e1f15
Fix MIDI SysEx undo/redo
Previously `new_sysex_diff_command` used XMLNode c'tor.
An Unnamed undo transaction was created, and undo did not work.
2024-09-08 21:09:37 +02:00
d257c8c0ce
Prevent endless recursive directory scans
This can happen when a folder symlinks to itself or subfolders
in some similar recursive pattern.
2024-09-08 01:33:57 +02:00