View Issue Details

IDProjectCategoryView StatusLast Update
0004405ardourbugspublic2013-01-21 07:38
Reporternettings Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status acknowledgedResolutionopen 
Target Version3.0 
Summary0004405: group solo mute logic breaks when a solo'ed group is disconnected.
Descriptionin a new session, create two tracks 1 and 2. make them members of a group. from that group, create a subgroup bus A.
create another, unconnected bus B.
if you now solo either of the tracks, the A bus is correctly solo'ed along (in darker green, to show you that ardour did it for you), so that you can hear the signal in-place. the B bus is muted correctly.
just for testing, solo the B bus. your subgroup bus A will be muted correctly, along with both tracks.
Steps To Reproducenow be a bad girl/boy and disconnect the subgroup bus A while one of its feeding tracks is soloed.
it will stay dark green even though it is no longer connected to anything.
when you now solo either of the tracks, it will fail to mute correctly, because it still thinks it's part of that soloing chain.
to make matters worse, if you solo the B bus, A will stay open as well, as if it were set to "solo safe".
TagsNo tags attached.

Activities

paul

2012-01-25 15:30

administrator   ~0012664

rev 11346 should fix this. it does *NOT* fix the inverse issue (connect a bus to something soloed, the bus does not get soloed).

nettings

2012-03-14 15:46

manager   ~0012926

the issue is still somewhat open. i have a number of sessions with routes that ended up with soloed-by-downstream="1". it is impossible to get rid of this situation without editing the session file.

would it be possible for ardour to re-evaluate the solo dependency tree on loading and not store this permanently?
i don't see why it's stored at all, because the information is implicit in the solo states and routing. having this extra attribute just perpetuates inconsistencies from earlier track/bus removals.

also, i'd like to suggest to reset all solo deps when the user switches from sip to pfl/afl and back. that would make it possible to work around stale deps while the session is being worked on.

paul

2012-10-18 17:30

administrator   ~0014102

did i ever fix this? i.e. not storing the current solo state?

nettings

2013-01-21 07:38

manager   ~0014518

paul, the original issue now works very well for me: if a bus is soloed by upstream, then disconnected, its solo state is re-evaluated to "not implicitly soloed". but like you say, the reverse still creates problems:

solo the subgroup bus, and all member tracks get implicitly soloed. they will retain this state even when the subgroup bus is disconnected, _and_ the "soloed-by-downstream" flag is stored with the session. only way to recover is to edit the session file by hand.
as a quick solution, how about a "clear solo" button in the monitoring section and under "preferences->solo/mute" that will unset all solo buttons and traverse all channels and busses and unconditionally remove all soloed-by-[up|down]stream flags? extra points if this clear solo function is bindable to keyboard shortcuts and midi controllers.

i think this is sufficient, because rewiring with solo engaged is a somewhat pathological thing to do, and the user cannot really expect it to work just so.

if it's easily possible to trigger a fresh traversal of the soloing graph on any input/output connection changes, then let's do that, but even then, an explicit "clear solo" will be helpful.

Issue History

Date Modified Username Field Change
2011-10-29 21:22 nettings New Issue
2011-10-29 21:22 nettings cost => 0.00
2011-10-29 21:23 cth103 Target Version => 3.0-beta1
2011-11-14 14:48 cth103 Status new => confirmed
2011-11-14 14:49 cth103 Target Version 3.0-beta1 => 3.0-beta2
2012-01-10 20:46 cth103 Target Version 3.0-beta2 => 3.0-beta3
2012-01-25 15:30 paul Note Added: 0012664
2012-01-25 15:30 paul Status confirmed => feedback
2012-02-14 17:20 paul Target Version 3.0-beta3 => 3.0 beta4
2012-03-14 15:46 nettings Note Added: 0012926
2012-04-23 22:00 cth103 Status feedback => acknowledged
2012-05-23 15:08 cth103 Target Version 3.0 beta4 => 3.0
2012-10-18 17:30 paul Note Added: 0014102
2013-01-21 07:38 nettings Note Added: 0014518