Commit Graph

21092 Commits

Author SHA1 Message Date
Paul Davis
de1a425704 fix for metering of a MasterSend (internal send)
Metering for these sends should be effectively PostFader not Output,
and should not reflect the impact of solo & mute.
2024-05-10 08:35:03 -06:00
Paul Davis
edc03002eb for DEBUG::Processors, use display_name() not name()
This allows us to differentiate between different instances of the same
type of processor (e.g. Trim vs Fader, which are both of type Amp)
2024-05-10 08:35:03 -06:00
Robin Gareus
88df55f86d Remove debug messages, cleanup output (2/2) 2024-05-08 00:56:57 +02:00
Mattias Ohlsson
10109c3147 Fix typos 2024-05-07 18:52:02 +02:00
Robin Gareus
4b8b5acfc4 Fix builds with gcc-14 lstat (#9703 PR #893)
from stat(2)
```
lstat():
    /* glibc 2.19 and earlier */ _BSD_SOURCE
        || /* Since glibc 2.20 */ _DEFAULT_SOURCE
        || _XOPEN_SOURCE >= 500
        || /* Since glibc 2.10: */ _POSIX_C_SOURCE >= 200112L

```
2024-05-07 00:17:56 +02:00
Robin Gareus
70898a676b Allow to run IOTasklist without rt permissions 2024-05-06 23:20:26 +02:00
Paul Davis
fdd91cc325 remove debug output 2024-05-05 15:05:09 -06:00
Paul Davis
81d1724931 NO-OP: add clarifying comment 2024-05-05 15:01:54 -06:00
Robin Gareus
100ee72cec Fix copying RegionFx Automation 2024-05-03 14:44:49 +02:00
Robin Gareus
37d24eee7d Flush Audioregion local [fx] cache when changing region gain 2024-05-02 23:04:50 +02:00
Ben Loftis
27e2348b47 when capturing a midi pgm change, display the pgm num (for LT) 2024-05-02 12:43:12 -05:00
John Emmas
631ee17e34 Modify class ARDOUR::DiskReader because it now includes members declared using 'thread_local'
On Windows, variables defined as having thread storage can have a different address in different threads and as such, they aren't allowed to be imported or exported from a DLL.
2024-05-02 10:22:44 +01:00
Robin Gareus
99e2ac28e1 Update debug message to include regionfx and offset 2024-05-01 22:30:04 +02:00
Robin Gareus
b9da1a5bd5 Expose HW concurrency to LV2 plugins 2024-05-01 03:51:42 +02:00
Robin Gareus
5b9e4fff63 Parallelize Disk I/O and RegionFx processing 2024-04-30 03:46:39 +02:00
Robin Gareus
4b0da72bc2 Delegate all DiskReader I/O to the IOTaskList (amend 170b9150) 2024-04-30 01:55:44 +02:00
Robin Gareus
ee87b068e8 Move RegionFx ThreadBuffers to Butler thread 2024-04-30 01:54:33 +02:00
Robin Gareus
170b915038 Prepare for parallel Disk I/O 2024-04-30 00:01:32 +02:00
Robin Gareus
2af2df3516 Raise the butler's I/O priority
This likely won't make much difference on modern systems,
since it requires a kernel based I/O scheduler. which is
disabled (set to "none" for NVMe and SSDs).
2024-04-29 21:46:06 +02:00
Robin Gareus
e90e31d682 Add a Tracks/Waveform icon 2024-04-29 21:00:27 +02:00
Robin Gareus
5f7ecf59a5 Allow to compile w/o LV2 support (trax) 2024-04-28 17:50:51 +02:00
Paul Davis
21a39c5f1f profile initialization per-program needs to happen earlier, in ARDOUR::init() 2024-04-25 13:07:00 -06:00
Paul Davis
87f40ddc7f some libardour support for MIDI scene support 2024-04-25 13:07:00 -06:00
Paul Davis
a0756429cf auto-fication of a loop in InternalReturn 2024-04-25 13:07:00 -06:00
Paul Davis
7bcdd5b2e4 NO-OP: add space before bracket 2024-04-25 13:07:00 -06:00
Paul Davis
e3b21ed77a NO-OP: linebeeak removed 2024-04-25 13:07:00 -06:00
Paul Davis
125b0f9432 add a new Profile flag for livetrax 2024-04-25 13:07:00 -06:00
Paul Davis
16ed245977 allow true boxy buttons for ArdourButtons
Also add a default tweaks static member to force all buttons to a given tweak state
2024-04-25 13:03:52 -06:00
Paul Davis
46fa056da6 add unrounded rectangle methods to Gtkmm2ext for use in truly boxy buttons 2024-04-25 13:03:52 -06:00
Robin Gareus
354e60d657 Drop session's monitor bus reference when removing the bus 2024-04-25 19:18:06 +02:00
Robin Gareus
848832f8b0 Flush GraphNode RCU when removing Routes
Since 44610c787 RCU keeps references until another write happens.
even before then, some shared_ptr references may have been kept.

When using a process graph, a route's activision-set can
hold references to other graph-nodes (routes). This lead
to Routes not being deleted until a second graph-reorder
flushed the RCU.
2024-04-25 19:18:06 +02:00
Robin Gareus
4665cdcb6b Add icons for livetrax (lock, mixer, meter) 2024-04-25 02:21:10 +02:00
Robin Gareus
b00ddcfe1c Fix -Waddress (and expand tabs)
The expansion of the macro resulted in:
"the comparison will always evaluate as 'true' for the address of .."
2024-04-24 18:06:27 +02:00
agfline
41587d3c06 Update libaaf to v1.0-11-gb04c547 2024-04-24 17:13:00 +02:00
Robin Gareus
895fe2f753 Fix Windows builds 2/2 (amend b2d4280e0) 2024-04-24 06:08:26 +02:00
Robin Gareus
df12126909 Fix Windows builds 1/2 (amend bcbb4393fc) 2024-04-24 06:02:13 +02:00
Robin Gareus
457238ec2e Per [Audio] Region Fx
* apply effects during region-read in non-rt context
* Add multi-channel audioregion read cache
  to process stereo effects
2024-04-23 21:56:15 +02:00
Robin Gareus
1996945353 Add custom RegionFxPlugin
Less than a PluginInsert but more than an IOPlug.
2024-04-23 21:56:10 +02:00
Robin Gareus
b04fa05f20 NO-OP: sort debug bits 2024-04-23 21:55:59 +02:00
Robin Gareus
59b2369736 Remove unused gain-buffer for master-read (NOOP) 2024-04-23 21:52:02 +02:00
Robin Gareus
f3823e8d7c Fix redeclaration of DnDVbox 2024-04-23 21:51:55 +02:00
Robin Gareus
2bb4a9ac4e Add API to configure plugins for non-realtime offline processing 2024-04-23 21:51:50 +02:00
Robin Gareus
f858316503 Plugins: Ignore offset for scratch/silent buffers
This allows to process buffers at an offset, as long
as the number of processed samples is less or equal to the
current buffersize.
2024-04-23 21:51:19 +02:00
Robin Gareus
2ca5f28910 NO-OP: whitespace 2024-04-23 21:51:07 +02:00
Robin Gareus
2f6a428f05 Overhaul and optimize thread-buffer allocation
Every route calls Session::ensure_buffers when configuring
processors. Previously that unconditionally invoked the
BufferManager, even if no change was required.

This also fixes a potential issue when bouncing tracks.
::write_one_track() increases the buffersize to 8k, but only for
the ChanCount required to bounce. This was never properly reset.

Furthermore this is in preparation for RegionFX which may
need to increase the ChanCount of Threadbuffers.
2024-04-23 21:51:04 +02:00
Robin Gareus
6dfcb60763 Automatable find_next/prev_ac_event requires no context
This allows to use the functions from a class that
does not inherit from Automatable but has AutomationControls
with an AutomationList.
2024-04-23 21:50:58 +02:00
Robin Gareus
f111f200c1 Fix signal analysis when buffer-size changes
PI::signal-analysis buffers were not updated when a user
changes the buffersize.

This also remove a single use Session API.
2024-04-23 21:49:48 +02:00
Robin Gareus
df8106bd85 PluginInsert match I/O: skip div by zero 2024-04-23 21:49:41 +02:00
Robin Gareus
92183430b9 IOPlug: various small fixes (port-names, VST compat, etc) 2024-04-23 21:49:28 +02:00
Robin Gareus
5216a6d987 Refactor and consolidate setting and copying plugin state 2024-04-21 16:32:47 +02:00