View Issue Details

IDProjectCategoryView StatusLast Update
0008840ardourbugspublic2024-03-01 02:17
Reportertimetre Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
PlatformGNUOSFedoraOS Version33
Product Version6.9 
Summary0008840: Using OSC crashes Ardour when strip has Aux Send
DescriptionUsing ToucOSC to control Ardour
Works fine except if:
A track has an Aux Send and the track is selected (either via ToucOSC or via the Ardour UI itself).
It crashes Ardour every time (core dump)
If the track is not selected it stays usable.
Whether the Aux Send is before or after the fader doesn't make a difference.
If the Aux Send is removed, then all is OK and it no longer crashes
Seems to be tied to the feedback.
Steps To ReproduceIn a session put an Aux Send on one track
With the OSC client connected and receiving feedback, select the track that has the send
Tagsosc

Activities

Sogolumbo

2024-02-29 18:48

reporter   ~0028576

I found a bug which is probably related:
Ardour will crash if a bus has receives a send or if it has a track as an input when using the following setup.
Also the ID sent over OSC will be off by one (see logs below).

Steps to reproduce:
Version: Ardour8.4.0 (built using 8.4 and GCC version 13.2.0)
Add one track, one bus and one foldback bus to an empty project, enable OSC (Open Sound Control).
Add a send from the bus to the foldback bus.
Case 1: Do nothing
Case 2: Add send from track to bus
Case 3: Add track as input to bus
Start open-stage-control and connect to the foldback bus using OSC (using config [1]) .

[1] https://github.com/Sogolumbo/ardour-control/blob/1f1744d5133191366b9502320eac95bf39ac0fd0/ardour-foldback-strip.json

Results:
Case 1: Nothing bad happens, all controls in open-stage-control work.
Case 2: Ardour crashes.
Case 3: Ardour crashes.

bash log from Ardour:
/usr/include/c++/13.2.0/bits/stl_vector.h:1125: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](size_type) [with _Tp = float; _Alloc = std::allocator<float>; reference = float&; size_type = long unsigned int]: Assertion '__n < this->size()' failed.

open stage control log (using -d command line option)
Case 1:
(DEBUG, OSC) Out: { address: '/cue/bus', args: [ { type: 'f', value: 1 } ] } To: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/name/1', args: 'Foldback' } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/name', args: 'Foldback' } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/mute', args: 0 } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/name', args: '0.00' } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/fader', args: 0.7817867398262024 } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/send/name/1', args: 'Bus 1' } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/send/name/1', args: '-0.03' } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/send/fader/1', args: 0.7809523940086365 } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/send/enable/1', args: 1 } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/signal', args: 0 } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/name', args: 'Foldback' } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/send/name/1', args: 'Bus 1' } From: 127.0.0.1:3819
Case 2 & 3 (same log):
(DEBUG, OSC) Out: { address: '/cue/bus', args: [ { type: 'f', value: 1 } ] } To: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/name/1', args: 'Foldback' } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/name', args: 'Foldback' } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/mute', args: 0 } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/name', args: '0.00' } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/fader', args: 0.7817867398262024 } From: 127.0.0.1:3819
(DEBUG, OSC) In: { address: '/cue/send/name/2', args: 'Bus 1' } From: 127.0.0.1:3819

Sogolumbo

2024-03-01 02:17

reporter   ~0028577

Update to my previous note:
I found this bug using the version 8.4.0 from flathub https://flathub.org/apps/org.ardour.Ardour
To try and further investigate the issue I downloaded the latest free debug nightly build (8.4.38). With that version I couldn't reproduce my issue.
Then I tested with the version 8.4.0 downloaded straight from ardour.org. Again I couldn't reproduce the issue.
Finally I got back to the version 8.4.0 from flathub. I uninstalled and reinstalled it just to check and the issue remained.

I have no idea what's going on to cause this issue but now we have a nice workaround for my issue: use the official version.

Issue History

Date Modified Username Field Change
2021-12-18 21:04 timetre New Issue
2021-12-18 22:02 timetre Tag Attached: osc
2024-02-29 18:48 Sogolumbo Note Added: 0028576
2024-03-01 02:17 Sogolumbo Note Added: 0028577