Is there a way to get the instruments that have the sustain gate open during playback to all stop when playback stops? They always continue to sustain whatever note they are playing wherever the playhead stops which is really annoying.
Thanks,
Dan
You can use the “MIDI Panic” button (“!” top-left in the transport bar).
It is odd though. Last I checked Ardour sent “all notes off” MIDI event at transport stop.
–
EDIT: I just checked. Ardour only sends note off evens of notes that are played at transport stop. Sustain pedal is not raised, nor is a MIDI CC “all notes/sound off” message sent
Yes, I noticed that too and it can be annoying and should probably be fixed.
It is is difficult, though, to determine, which controller to send. “all sound off” would cut off all notes immediately (without release). I’m not sure whether “all notes off” does affect notes currently sounding because sustain is in effect. Anyway, even if it does, it would probably not re-set Sustain to zero, so then you get the effect that when you play additional notes (via MIDI input or by editing), they will be still sustained. “reset all controllers” would solve that, but it may also effect other sound parameters and you probably don’t want that.
The proper solution, imho, though a rather involved one, is “controller chasing”, i.e. for every MIDI track maintain background information, which controllers are in effect at any given point in time (for all MIDI channels). I know that some sequencers do that. This would, for example, additionally solve the annoying issue, that notes are out of tune, if you jump from a point in a MIDI clip where pitch bend is non-zero to an earlier/later point where it is back to zero, but the pitch bend events resetting it back to zero happened in the part you skipped.
We already have that inside Ardour. We just don’t use it for this purpose. We likely will in Ardour 9.0 or 9.x
However, I am not sure it is related to the original point …
+1 on this.
Sending CC64 value of 0 on all midi channels upon transport stop would be wonderful, as some types of music make it over 90% certain that you will have sustained engaged during stop, and notes-off does nothing about this.
A cude way is to use a Lua Script to send a MIDI Panic message at transport stop:
ardour { ["type"] = "EditorHook", name = "Panic at Stop" }
function signals ()
return LuaSignal.Set():add ({[LuaSignal.TransportStateChange] = true})
end
function factory () return function (signal)
if not Session:transport_state_rolling () then
Editor:access_action ("MIDI", "panic")
end
end end
Save above script to ~/.config/ardour8/scripts/panic_at_stop.lua
.
Then in Ardour: Menu > Edit > Lua Scripts > Script Manager.
“Action Hooks” Tab. New Hook … Add “Panic at Stop”.