Re: [LAD] Session wide panic functionality?
OSC doesn't work like that. The power and weakness of OSC is indeed in the fact that there's no standard OSC protocol for paths. JACK too doesn't have such a feature, because it really depends on how every DAW/plugin/VST/etc would handle a "panic" command. For example, I might have a synth that - by default - reacts to such a message by sending the above mentioned "all sounds off" event, but ignoring the "reset all controllers, but that allows a generic panic message which resets all controllers too. That's because a user might want to preserve the controllers status as it is and just stop notes. And this is just one in a million of possible scenarios. Anyway, if you're just using devices which are able to receive midi commands, you could try using mididings ( http://das.nasophon.de/mididings/ ) with a specific python script that interfaces with it. Then you can use whatever you want to control it, since it also has a basic OSC protocol feature. If you have both ALSA and JACK devices you might have to use two mididings scripts, or, eventually (if you really know python) use a single script that starts two different mididings engines, one with ALSA and the other with JACK. It's a bit tricky, but, once you get it, it's always better to start a start and check a single script than two ;) Cheers ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Session wide panic functionality?
On Sun, 23 Oct 2016 23:36:11 +0200 Simon van der Veldt wrote: > On Sun, Oct 23, 2016 at 7:16 PM, Christopher Arndt > wrote: > > > AFAIK, "/panic" is not a standard OSC message. In fact there are no > > "standard" OSC messages. > > > > You're correct, even though some OSC applications do have such an option > there doesn't seem to be a standardized way to trigger a "panic" mode in > OSC :( > > Then the question rises again, what would be the correct place to put this > kind of functionality? In the protocol that controls the instrument (MIDI > or OSC) or the protocol that controls the playback of the instrument (JACK > transport)? > > Simon First you need to decide whether you just want to stop making noise, or if you want to make everything stop doing whatever they do to make noise. They are not quite the same thing. -- Will J Godfrey http://www.musically.me.uk Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song. ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Session wide panic functionality?
On Sun, Oct 23, 2016 at 7:16 PM, Christopher Arndt wrote: > AFAIK, "/panic" is not a standard OSC message. In fact there are no > "standard" OSC messages. > You're correct, even though some OSC applications do have such an option there doesn't seem to be a standardized way to trigger a "panic" mode in OSC :( Then the question rises again, what would be the correct place to put this kind of functionality? In the protocol that controls the instrument (MIDI or OSC) or the protocol that controls the playback of the instrument (JACK transport)? Simon ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Session wide panic functionality?
Am 23.10.2016 um 18:51 schrieb Simon van der Veldt: > It's also possible to do this for OSC with the /panic command, so I > guess that solves the "where should this functionality live" question :) AFAIK, "/panic" is not a standard OSC message. In fact there are no "standard" OSC messages. Chris signature.asc Description: OpenPGP digital signature ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Session wide panic functionality?
On Sun, Oct 23, 2016 at 6:36 PM, Christopher Arndt wrote: > "Panic" is a colloquial name for the reaction triggered by the > combination of the MIDI "All notes off" and/or "All sound off" and > "Reset all controllers" messages. Devices and software, which have a > panic function usually react to these MIDI messages as well. > That's a perfect suggestion, totally forgot about the MIDI possibilities to do this. Thanks! It's also possible to do this for OSC with the /panic command, so I guess that solves the "where should this functionality live" question :) Also thanks a lot for the gist, I'll whip up a similar script which will trigger the relevant commands for both MIDI and OSC and run that separately from the session manager/transport controls when I need it. Maybe something to add to gladish or claudia in the future. Thanks again! Simon ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Session wide panic functionality?
Am 23.10.2016 um 18:36 schrieb Christopher Arndt: > for channel in range(16): > mo.send_message([CONTROL_CHANGE, ALL_SOUND_OFF, 0]) > mo.send_message([CONTROL_CHANGE, RESET_ALL_CONTROLLERS, 0]) Sorry, that should be: mo.send_message([CONTROL_CHANGE & channel, ALL_SOUND_OFF, 0]) mo.send_message([CONTROL_CHANGE & channel, RESET_ALL_CONTROLLERS, 0]) (Fixed the Gist as well.) Chris signature.asc Description: OpenPGP digital signature ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] Session wide panic functionality?
Am 23.10.2016 um 17:56 schrieb Simon van der Veldt: > One of the things I was wondering, it seems like there's no way to make > use of the functionality some instruments have to kill all sounds (panic > button) for all instruments in a session. "Panic" is a colloquial name for the reaction triggered by the combination of the MIDI "All notes off" and/or "All sound off" and "Reset all controllers" messages. Devices and software, which have a panic function usually react to these MIDI messages as well. Here's a script using python-rtmidi [1] to send "All sound off" and "Reset all controllers" on all MIDI channels to all available JACK MIDI outputs: https://gist.github.com/c3a212d0071ed78adf4507d16e74305d import rtmidi from rtmidi.midiconstants import (ALL_SOUND_OFF, CONTROL_CHANGE, RESET_ALL_CONTROLLERS) mo = rtmidi.MidiOut(rtapi=rtmidi.API_UNIX_JACK) print("Sending AllSoundOff and ResetAllControllers on all channels...") for portnum, portname in enumerate(mo.get_ports()): print("Port:", portname) mo.open_port(portnum) for channel in range(16): mo.send_message([CONTROL_CHANGE, ALL_SOUND_OFF, 0]) mo.send_message([CONTROL_CHANGE, RESET_ALL_CONTROLLERS, 0]) mo.close_port() [1] https://github.com/SpotlightKid/python-rtmidi signature.asc Description: OpenPGP digital signature ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
[LAD] Session wide panic functionality?
Hi all, I'm new to this list, been getting into making music on my Linux machine the last couple of weeks/months. One of the things I was wondering, it seems like there's no way to make use of the functionality some instruments have to kill all sounds (panic button) for all instruments in a session. Am I correct in my observation that functionality like this is missing? Do others see a use/need for this as well? If so, I'm wondering what the correct place would be to implement this: I'd guess JACK transport? Thanks and have a nice day! Simon ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev