Commit Graph

38940 Commits

Author SHA1 Message Date
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
97becda83a Update icon rendering tool 2024-04-25 19:18:02 +02:00
Paul Davis
f1a3eb1e3d use a different source file for ardour.menus in the livetrax case 2024-04-25 09:26:33 -06: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
8ea3a14cd6 Update AAF import UI 2024-04-24 17:13:00 +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
38adfdf79e Add custom color for region effect automation 2024-04-23 21:56:26 +02:00
Robin Gareus
b2d4280e0f Add support for Region Fx Automation 2024-04-23 21:56:22 +02:00
Robin Gareus
e5506d281a GUI support for Region Fx (in Region Properties) 2024-04-23 21:56:18 +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
ad9a3ae103 Fix region-gain envelope auto-enable when dragging
When using freehand drawing of automation, the line itself
is not notified (no ::start_drag(), ::end_drag() calls).

This adds a end_draw() call which allows the AutomatioLine
to perform additional actions.
2024-04-23 21:56:05 +02:00
Robin Gareus
b04fa05f20 NO-OP: sort debug bits 2024-04-23 21:55:59 +02:00
Robin Gareus
1cd9a9b57d Only show automation mode button for PluginInsert ctrls
Previously the generic UI of I/O plugins (and upcoming Region
Fx showed an insensitive Automation mode (manual, play, touch etc)
dropdown for all controls.

That accomplished nothing but wasted space.
2024-04-23 21:55:54 +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
598ff1cb9a Separate PluginWindowProxy into public class 2024-04-23 21:51:31 +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
Robin Gareus
f5b53a6d14 Consolidate PluginInsert Match, move to parent class 2024-04-21 16:32:47 +02:00
Robin Gareus
2da3141706 Consolidate plugin_factory, move to parent class 2024-04-21 16:32:47 +02:00
Robin Gareus
d2bdf440c8 Consolidate PluginControl Code
This code was (for the most part) duplicated, and with
preparation for Region FX, a third copy motivated this
consolidation.
2024-04-21 16:32:47 +02:00
Robin Gareus
6191f89d55 Properly update Solo state when setting multiple ctrls 2024-04-21 16:32:13 +02:00
Robin Gareus
bcbb4393fc Allow Lua [session] script to directly set controllables 2024-04-21 16:32:10 +02:00
Paul Davis
894e6d27a4 NOOP: whitespace cleanup 2024-04-19 10:43:10 -06:00
Paul Davis
c96e12ba58 expand null/destroyed tests for gdk objects in NSView methods 2024-04-19 10:42:59 -06:00
Robin Gareus
e64a071e39 (YDK) amend previous commit, call parent method 2024-04-19 16:46:49 +02:00
Robin Gareus
08e394f681 (YDK) possible fix for Catalina event loop crashes
```
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libydk.dylib 0x0000000110d8942d -[GdkQuartzView setNeedsDisplay:] + 93
1 com.apple.AppKit 0x00007fff34af6848 -[NSView(NSViewContentStyle) _recursivelyInvalidateCachedContentStyle] + 120
2 com.apple.AppKit 0x00007fff34af60fb -[NSView _setSuperview:] + 521
3 com.apple.AppKit 0x00007fff34b200a6 -[NSView removeFromSuperview] + 140
4 com.apple.AppKit 0x00007fff34ba882f -[NSView removeFromSuperviewWithoutNeedingDisplay] + 36
5 com.apple.AppKit 0x00007fff34b27168 -[NSView _finalize] + 977
6 com.apple.AppKit 0x00007fff34b26c0c -[NSView dealloc] + 121
7 com.apple.AppKit 0x00007fff34e30db4 -[NSFrameView dealloc] + 119
8 com.apple.AppKit 0x00007fff34e30d36 -[NSTitledFrame dealloc] + 62
9 com.apple.AppKit 0x00007fff34e30ce9 -[NSThemeFrame dealloc] + 603
10 com.apple.Foundation 0x00007fff39ed5992 NSKVODeallocate + 172
11 com.apple.AppKit 0x00007fff34d85884 -[NSWindow dealloc] + 1083
12 com.apple.AppKit 0x00007fff34d85442 -[NSWindow _dealloc] + 76
13 libobjc.A.dylib 0x00007fff6f6f3054 AutoreleasePoolPage::releaseUntil(objc_object**) + 134
14 libobjc.A.dylib 0x00007fff6f6d7dba objc_autoreleasePoolPop + 175
15 com.apple.CoreFoundation 0x00007fff377c9cb5 _CFAutoreleasePoolPop + 22
16 com.apple.Foundation 0x00007fff39e7d04e -[NSAutoreleasePool drain] + 126
17 libydk.dylib 0x0000000110d8ef29 gdk_event_prepare + 73
18 libglib-2.0.0.dylib 0x00000001110ded45 g_main_context_prepare + 533
19 libglib-2.0.0.dylib 0x00000001110df800 g_main_context_iterate + 128
20 libglib-2.0.0.dylib 0x00000001110dfcc2 g_main_loop_run + 210
21 libytk.dylib 0x0000000110a4f11f gtk_main + 191
22 libgtkmm2ext.dylib 0x00000001104cef1e Gtkmm2ext::UI::run(Receiver&) + 318
23 com.harrisonconsoles.Mixbus10 0x000000010dc6fb9c main + 2652
```
2024-04-19 15:38:12 +02:00
Robin Gareus
136b7f42d5 Skip tags for plugins that are not installed
This prevents empty sub-menus in the "By Tag" Plugin menu.
2024-04-18 17:07:12 +02:00
Robin Gareus
4b6e372ce7 Fix deleting the same point multiple times (#9689)
When iterating over automation tracks, previously it was
possible that the same point was added multiple times to
the selection.
2024-04-15 00:39:20 +02:00
Edgar Aichinger
c9c419213f update german translation 2024-04-14 00:42:09 +02:00
Paul Davis
dde59c8e4c temporary fix for X Window and Windows bad canvas drawing with no single expose 2024-04-12 18:55:27 -06:00
Paul Davis
1eb2a345df prevent flickering of snapped cursor during drags when it should be invisible 2024-04-12 18:54:52 -06:00
Paul Davis
e7b3b61dbc fix bad redraws caused by TrackingText on canvas
Probably Item::set_position() should call Item::set_bbox_dirty() but
this will do as a first pass at that
2024-04-12 18:50:03 -06:00
Robin Gareus
ab1299da87 We're behind the times 2024-04-13 00:54:52 +02:00
Robin Gareus
44610c7877 Fix RCU race condition (see source for details) 2024-04-12 00:26:51 +02:00
Robin Gareus
96e83f4101 Semicolon to the rescue 2024-04-11 23:42:13 +02:00
Robin Gareus
b8c474ff32 Add support for splash screen image transparency 2024-04-11 19:42:14 +02:00
Robin Gareus
a69ca86944 Fix inline controls allow for inverted range
Some controls (notably pan azimuth) have reversed range 1..0.
Support for this was added years ago in 647103c825
but inline controls were not updated.
2024-04-11 19:41:14 +02:00