Best way to avoid stuck notes with subsessions?
-
- KVRist
- 196 posts since 12 Mar, 2002 from Mountain View, CA
I spent some time last night dialing in my Cantabile rack. Overall things are going great, but I hit some intermittent problems with stuck notes. I have two subsessions: one that has Akoustik Piano muted and Elektrik Piano playing, the other with Akoustik Piano playing and Elektrik Piano muted. I use program change messages from my MIDI controller to switch subsessions.
Occasionally I would switch subsessions, and get a stuck note. It seems to be a race condition, because I still haven't figured out a way to consistently repro the problem. I'm starting to think that maybe muting the synth is not the best plan for me. Maybe I should use triggers, and send "all notes off" to all synths whenever I switch subsessions? I'm not CPU-bound, so this might be the better way to go in any case. I'd probably get smoother switches between subsessions because trailing notes wouldn't get muted.
Have other people hit this problem? I'd be curious to hear about your solutions.
Boris
Occasionally I would switch subsessions, and get a stuck note. It seems to be a race condition, because I still haven't figured out a way to consistently repro the problem. I'm starting to think that maybe muting the synth is not the best plan for me. Maybe I should use triggers, and send "all notes off" to all synths whenever I switch subsessions? I'm not CPU-bound, so this might be the better way to go in any case. I'd probably get smoother switches between subsessions because trailing notes wouldn't get muted.
Have other people hit this problem? I'd be curious to hear about your solutions.
Boris
-
- KVRian
- 791 posts since 8 Mar, 2006 from Australia
Hi Boris,
I've been looking into this and haven't been able to reproduce any issues. I've also double checked what happens on muting/bypassing a plugin or rack and Cantabile tries to ensure no stuck notes by sending note off events for all notes that it knows are currently held.
Also to be clear, by stuck notes, I assume you mean the plugin goes quiet but then when you switch back to that instrument it continues sounding out previously held notes?
Basically, I'm not sure how this could happen. What would be useful is a more accurate repro case but I understand these can be difficult to isolate and the best I can suggest at the moment is to enable Cantabile's MIDI-in port recorder to see if you can capture a scenario when it happens. I wouldn't recommend using the port recorder in a live/production environment as it does have some overhead - but if you're just experimenting it's probably the best way to capture what's happening. See Options -> Resources -> Diagnostics -> Log MIDI-in Events to enable this logging.
Also, are you using anything else in the session like MIDI filters, keyboard splits and (especially) transpositions that might cause Cantabile to get confused about exactly which notes are held?
Brad
I've been looking into this and haven't been able to reproduce any issues. I've also double checked what happens on muting/bypassing a plugin or rack and Cantabile tries to ensure no stuck notes by sending note off events for all notes that it knows are currently held.
Also to be clear, by stuck notes, I assume you mean the plugin goes quiet but then when you switch back to that instrument it continues sounding out previously held notes?
Basically, I'm not sure how this could happen. What would be useful is a more accurate repro case but I understand these can be difficult to isolate and the best I can suggest at the moment is to enable Cantabile's MIDI-in port recorder to see if you can capture a scenario when it happens. I wouldn't recommend using the port recorder in a live/production environment as it does have some overhead - but if you're just experimenting it's probably the best way to capture what's happening. See Options -> Resources -> Diagnostics -> Log MIDI-in Events to enable this logging.
Also, are you using anything else in the session like MIDI filters, keyboard splits and (especially) transpositions that might cause Cantabile to get confused about exactly which notes are held?
Brad
-
- KVRAF
- 2310 posts since 13 Apr, 2008 from Germany
This is a thing I've noticed sometimes too... indeed odd.bradr wrote:...
Also to be clear, by stuck notes, I assume you mean the plugin goes quiet but then when you switch back to that instrument it continues sounding out previously held notes?
...
Maybe some plugins do not process all notes off. Possibly sending volume CC7 = 0 might change that but all these workarounds seem to be weird to me...
Best regards, TiUser
...and keep on jamming...
...and keep on jamming...
-
- KVRist
- Topic Starter
- 196 posts since 12 Mar, 2002 from Mountain View, CA
I have a theory about what it might be. I think I hit a note, switch subsessions, and the note gets sent to the new subsession even though I sent the program change after the note off. Then the note hangs because the new synth never receives the note off. I'll turn on the port recorder and play around with it some more and see if I can repro.bradr wrote:Also to be clear, by stuck notes, I assume you mean the plugin goes quiet but then when you switch back to that instrument it continues sounding out previously held notes?
The rack uses MIDI filters for ignoring certain channels, and I have triggers on some of my subsessions that send a program change. I can send you a copy of my Cantabile file, if it would be helpful.
-
- KVRist
- Topic Starter
- 196 posts since 12 Mar, 2002 from Mountain View, CA
I just noticed that each rack has both a mute and bypass switch. I've been using mute. Should I use bypass instead? If the note off message is being discarded, maybe bypass would cause it to be sent to the synth, and avoid the hanging note?
-
- KVRAF
- 2310 posts since 13 Apr, 2008 from Germany
...I'm not perfectly sure here either but I think bypass means just the audio feed and mute the midi feed, does it?
Unless you send a plugin to sleep with suspend it is also still sustaining, even if you bypass it. That's great to switch subsessions without cutting off the sustain phase of a plugin instrument - unless you change the patch itself - for the price of more CPU usage.
Unless you send a plugin to sleep with suspend it is also still sustaining, even if you bypass it. That's great to switch subsessions without cutting off the sustain phase of a plugin instrument - unless you change the patch itself - for the price of more CPU usage.
Best regards, TiUser
...and keep on jamming...
...and keep on jamming...
-
- KVRist
- Topic Starter
- 196 posts since 12 Mar, 2002 from Mountain View, CA
I did some more experimenting, and saw the same stuck-note issues with bypass as with mute. In fact I ran into some more bugs with bypass, where after switching to a subsession, racks would still play even when their bypass switch was turned on in the UI. If I turned bypass off, then on again, then the rack would stop playing. As always, no clear repro steps... 
-
- KVRian
- 791 posts since 8 Mar, 2006 from Australia
Just wanted to note that I am looking into this and have reproduced one issue (where a note that was sounding in a previous sub-session continues it's release when reactivated) and am still investigating the other issues...
Brad
Brad
