13
0
Commit Graph

31603 Commits

Author SHA1 Message Date
8661aa1809
ALSA: Fix swapped systemic latencies
This went unnoticed since measured systemic latency
is equally distributes between input and output.
2021-04-11 15:15:17 +02:00
4cbf642bfd
Add missing header guards 2021-04-11 15:15:04 +02:00
bc1d19ab39
Increase process-thread stack size (same value as jack2) 2021-04-09 22:00:11 +02:00
5e01275d0e
Set default master-bus meter-point to output
For master-bus measuring the signal directly at the
output is preferable. This includes the panner, mute,
and loudness gain.
2021-04-08 01:18:09 +02:00
John Emmas
c776b1fca4 Add/remove source(s) in our MSVC project (gtk2_ardour) 2021-04-07 12:07:14 +01:00
72db091619
Fix crash at exit with classic Faderport
FaderPort::~FaderPort () can be called while
FaderPort::map_gain() is called from FaderPort::periodic()

```
Thread 71 Crashed:
0      libardour_faderport.dylib          	0x0000000110539c3a ArdourSurface::FaderPort::map_gain() + 138
1      libardour_faderport.dylib          	0x000000011053996d ArdourSurface::FaderPort::periodic() + 109
2      libglibmm-2.4.1.dylib                  	0x000000010bf21da8 Glib::TimeoutSource::dispatch(sigc::slot_base*) + 56
3      libglibmm-2.4.1.dylib                  	0x000000010bf20c97 Glib::Source::dispatch_vfunc(_GSource*, int (*)(void*), void*) + 39
4      libglib-2.0.0.dylib                      	0x000000010c012496 g_main_context_dispatch + 326
5      libglib-2.0.0.dylib                      	0x000000010c01281a g_main_context_iterate + 474
6      libglib-2.0.0.dylib                      	0x000000010c012b3f g_main_loop_run + 191
7      libpbd.dylib                                    	0x000000010bcee42e BaseUI::main_thread() + 254
8      libglibmm-2.4.1.dylib                  	0x000000010bf16373 (anonymous namespace)::call_thread_entry_slot(void*) + 35
9      libglib-2.0.0.dylib                      	0x000000010c03dd0a g_thread_proxy + 90
10    libsystem_pthread.dylib              	0x00007fff759e42eb _pthread_body + 126
11    libsystem_pthread.dylib              	0x00007fff759e7249 _pthread_start + 66
12    libsystem_pthread.dylib              	0x00007fff759e340d thread_start + 13
```

While the GUI thread has already closed the MIDI ports in ~FaderPort
and proceeded to take down the FP GUI.

```
Thread 0:: Dispatch queue: com.apple.main-thread

47    libgtkmm-2.4.1.dylib                    	0x000000010ca69a56 Gtk::ComboBox::~ComboBox() + 22
48    libardour_faderport.dylib          	0x000000011055a6e5 ArdourSurface::FPGUI::~FPGUI() + 149
49    libardour_faderport.dylib          	0x000000011055a8b5 ArdourSurface::FPGUI::~FPGUI() + 21
50    libardour_faderport.dylib          	0x0000000110551396 ArdourSurface::FaderPort::tear_down_gui() + 70
51    libardour_faderport.dylib          	0x0000000110536507 ArdourSurface::FaderPort::~FaderPort() + 535
52    libardour_faderport.dylib          	0x0000000110536b9e ArdourSurface::FaderPort::~FaderPort() + 14
53    libardour.dylib                              	0x000000010ac13f08 ARDOUR::ControlProtocolManager::drop_protocols() + 168
54    libardour.dylib                              	0x000000010b0ba7e4 ARDOUR::Session::destroy() + 212
55    libardour.dylib                              	0x000000010b0bbe01 ARDOUR::Session::~Session() + 113
56    libardour.dylib                              	0x000000010b0bdb5e ARDOUR::Session::~Session() + 14
2021-04-07 02:25:52 +02:00
b095cb8e75
Prepare for 6.7 2021-04-07 01:50:34 +02:00
15c2077cdf
Include loudness plot on export-report 2021-04-07 01:50:30 +02:00
3bc4dcf36f
Add method to plot loudness analysis graph 2021-04-07 01:48:01 +02:00
babf319cea
NO-OP: separate export-report image rendering 2021-04-07 01:47:00 +02:00
c1d98ca3c8
Export analysis: log loudness / time 2021-04-07 01:46:02 +02:00
e3a6fab05e
EBU/VAMP: clang-format and reduce scope 2021-04-07 01:45:29 +02:00
1890cc234f
Tweak export-report time-axis labels 2021-04-05 03:32:48 +02:00
7390cad25d
Port registration should not mark the session as modified
This fixes dirty session after freewheeling export
or analysis.
2021-04-05 03:29:42 +02:00
2ed8fd2723
Pixel-pushing: vertically align special busses
The mixer's track area has a border with shadow (again).
This breaks vertical alignment with monitor-section,
master, foldback busses.
2021-04-03 22:27:05 +02:00
4c228c2eab
Remove cruft 2021-04-03 14:56:15 +02:00
Daniel Ceregatti
362b9cb4fa
Maschine Mikro MK2 support 2021-04-01 20:07:55 +02:00
John Emmas
c51d810d65 Accommodate some recent changes in 'tools/fmt-bindings' 2021-03-31 09:21:36 +01:00
723534f430
Further limit size of shaded "+" icon 2021-03-31 01:43:35 +02:00
c48c09c080 Recover waveform-gradient-depth slider for ardour, and timeline-item-gradient-depth for mixbus
These items were likely a casualty of a merge when re-laying out the preferences panel
2021-03-30 17:04:13 -05:00
b7c030b347
Indicate ambiguous latency, capture alignment issues
Previously this was only displayed when the latency
toolbar widget was added (off by default).
2021-03-30 21:19:55 +02:00
edfcc71bcf
Revert "Fix auto capture alignment when bouncing metronome"
When the metronome is routed through a track, it
will correctly get the downstream playback latency.
Capture Alignment is Capture-Time.

This fixes a case where the metronome is connected to
physical I/O and a track. This can result in ambiguous
latency if the track's output is not connected or
connected via latent master bus.

This reverts commit f08b90f368.
2021-03-30 21:08:31 +02:00
ea01ec5988
Correctly detect glib volatile atomic
see also https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1919
2021-03-30 15:29:53 +02:00
98c55abdfe
Foldback: fix removing last fb bus
This also reverts a RouteUI change to handle set_route(NULL)
from ce28065421.

The RouteUI already calls self_delete() when DropReferences
is emitted.
2021-03-30 01:48:46 +02:00
d87002617e
Implement zero-latency convolver 2021-03-30 01:29:32 +02:00
cce1a67e75
zita-convolver: fix hang at when re-loading state
The convolver may be re-activated shortly after initialization
(e.g. session load, switching snapshots, or buffer-size.

In this case not all process threads may have started.
Convproc::stop_process() skips them (their state is still ST_IDLE).
Yet some short time later the thread's main function runs
and changes the state to ST_PROC, and check_stop () waits forever.

This is solved by waiting for all threads to start.
2021-03-30 01:29:28 +02:00
f7ab563da0
zita-convolver: prepare for non-power-of-two processing 2021-03-29 15:52:02 +02:00
915ce04a44
zita-convolver: remove unused API 2021-03-29 15:49:57 +02:00
1b1ef165d3
zita-convolver: add some const'ness 2021-03-29 15:36:09 +02:00
a270dc76d6
zita-convolver: always scope branches and loops 2021-03-29 15:34:44 +02:00
eebe4e467b
VST3: pass a read-only state stream to the plugin #8642
see also 9e7cfdd880 - this is a workaround for some plugins
that do not use the SDK and seek the stream using absolute
offsets.
2021-03-29 14:48:01 +02:00
1bffdfc334
Open add-route dialog on double-click or context-click 2021-03-28 20:39:34 +02:00
e4f59d9a4d
Foldback: update button sensitivity when sends or fb's change 2021-03-28 20:11:34 +02:00
7ea1b7c3c2
a-delay: BPM is independent of the meter (quarter notes / min) 2021-03-28 18:23:07 +02:00
8fbde5860d
Make group tabs insensitive when spilling sends
* Mixer layout does not change when spilling sends
* Tabs don't automatically show after spill_nothing()
  even if `show-group-tabs` is off
2021-03-28 17:46:01 +02:00
88ed770bce
Implement group-tab sensitivity 2021-03-28 17:43:17 +02:00
bfc72ac379
Fix 32bit builds (missing size_t string convert)
../libs/pbd/pbd/string_convert.h: In function 'std::string PBD::to_string(T) [with T = long unsigned int]':
../gtk2_ardour/foldback_strip.cc:581:   instantiated from here
../libs/pbd/pbd/string_convert.h:238: error: 'long unsigned int' is not a class, struc
2021-03-28 05:45:20 +02:00
09d9938ecd
Remove duplicate symbol ColumnInfo from global namespace #8637 2021-03-28 04:31:11 +02:00
9c4a8ba528
Foldback: GUI consistency
* Insensitive route-ops menu when track disabled
* Re-order route-ops to match mixer-strip
* Add number Label to foldbacks
* Set spacing for consistent look/feel
2021-03-27 23:14:19 +01:00
8402dd4888
Spill only direct feeds
When using chained sends, only show the direct parent:
    track A -> bus 1 -> bus 2
Showing sends feeding "bus 2", previously also displayed
"track A". However only "bus 1"' mixer-strip changed to show
the send controls.

We should not propagate displayed deliveries upstream, since
there may be ambiguities. There could be an additional send:
     track A -> bus 2
2021-03-27 21:30:56 +01:00
fdc3efda7e
Add Lua binding to rename session 2021-03-27 19:44:00 +01:00
bf8f0efbf9
Foldback: Cont'd tweaks and fixes
* Follow track order changes
* Show send context menu on right-click
* use "route_connections" for route signals
2021-03-27 19:33:46 +01:00
294b550584
Trap click signals of inline-controls
RouteUI::show_sends_press() is re-used used to show
the send context menu. However other button actions
need to be ignored.
2021-03-27 18:47:01 +01:00
c91080e950
NO-OP: cosmetic changes
* Prefix private member variable with underscores.
* use C-style comment blocks
* Inline single-use method
2021-03-27 18:31:10 +01:00
602135ad66
Foldback: Remove shadowed session-variable, RouteUI is-a SessionHandlePtr 2021-03-27 18:24:39 +01:00
5be04a4920
NO-OP: clang-format 2021-03-27 17:58:45 +01:00
ac5bca4a92
Clean up RouteUI header
* Consolidate access modifiers
* Remove all public member variables
* Only expose required functions, use private
  whenever possible
* Rename private members, prefix underscore
* Remove cruft
2021-03-27 17:44:34 +01:00
003be3d87e
Localize private variable (only used by RouteUI) 2021-03-27 16:25:30 +01:00
24499fa7da
Foldback: use RouteUI send-spill functions
This resolves ambiguities of overloaded non-virtual methods
that used shared protected variables (send_blink_connection).

It fixes "show sends" of foldback busses (spilling the send
controls) and allows for showing showing other sends directly
without first disabling it.

This fixes some related issues with inheritance and
signal propagation.
2021-03-27 15:52:14 +01:00
212b08b422
Foldback: remove unused processor actions
Also since foldback-busses are not selectable AxisViews,
various keyboard-shortcut operations cannot be performed
from the mixer-context. However the processox-box itself
provides these actions for the fold-back bus.
2021-03-26 23:52:12 +01:00