[PD] MIDI / STATUS_BYTE / noteOn - noteOff mesage

Simon Iten itensimon at gmail.com
Tue Oct 4 23:17:16 CEST 2022


ah i see. the roli has keys, but they are mushy definitely not a classic controller. 

yes the trend goes towards more expression which is kind of difficult to do (and quite expensive) with a classic keyboard approach. why stop at polyphonic aftertouch when you can have polyphonic pitchbend, and two other parameters? (cutoff and resonance for example)

but i get you, if you are used to a traditional keyboard a ROLI (or other modern MPE controller) can be quite a learning curve.

as a cheap entry point to test out some of the MPE concepts, try a qunexus controller.



> On 4 Oct 2022, at 19:39, Alexandre Torres Porres <porres at gmail.com> wrote:
> 
> The RolI seaboard is not a "classic" controller in the keyboard format. I've seen many "novel" controllers that have such a thing but are not proper keyboard controllers, with proper keys, that are hit and then you can press it further, with polyphony. I don't know of any new one that has such a proper polyphonic aftertouch. I don't know how the RolI seaboard works, but it seems it doesn't even have keys right?
> 
> I have a "proper" keyboard, a new one, kinda cheap, with polyphonic aftertouch, but it is way too thin and the key has very little travel. The polyphonic aftertouch works by releasing the pressure and then working on it again, which is a very bogus way...
> 
> In order to try a proper keyboard controller with poliphonic aftertouch and release velocity I had to buy an old one from the 80s, but I found the keys to be too heavy, they are piano like and the polyphonic aftertouch requires a lot of finger strength, so it wasn't really a good one.
> 
> Sometime recently, there was a kickstarter campaign with an old keyboard manufacturer that was offering DIY kits so people could build their legacy controller with such controls, but it was a failure as people couldn't really build it and get it to work, it was a mess, and the product never really came back.
> 
> cheers
> 
> Em ter., 4 de out. de 2022 às 01:59, Simon Iten <itensimon at gmail.com <mailto:itensimon at gmail.com>> escreveu:
> Yes but RolI seaboard and linnstrument have polyphonic aftertouch, in fact they even have three expressive parameters per note. Pressure, X and Y axis. Since there is only one message per note available (polyphonic aftertouch) in standard MIDI, MPE was born to allow for polyphonic Pitchbend for example (each note potentially in different directions and at a different level)
> 
> there is not really anything to implement MPE wise, it is still standard MIDI messages, general modulation takes places on channel 1 and per note modulation is done with CC messages that are sent on Channel 2-16, in accordance to each new note that is played, that also gets a channel from 2 to 16 assigned in a round robin fashion (or other logic of you prefer).
> 
> And yes, that means your limited to 15 voices.
> 
> So some route objects should work wonders :)
> 
> On Tue, 4 Oct 2022, 01:54 Alexandre Torres Porres, <porres at gmail.com <mailto:porres at gmail.com>> wrote:
> I was talking more about polyphonic aftertouch than rel velocity.
> 
> btw, Pd still needs implementations for MPE right?
> 
> Em seg., 3 de out. de 2022 às 01:42, Simon Iten <itensimon at gmail.com <mailto:itensimon at gmail.com>> escreveu:
> Roli seaboard, linnstrument. Don't know if those have noteoff velocity, but they sure have MPE
> 
> On Mon, 3 Oct 2022, 00:39 Alexandre Torres Porres, <porres at gmail.com <mailto:porres at gmail.com>> wrote:
> 
> 
> Em dom., 2 de out. de 2022 às 16:56, Simon Iten <itensimon at gmail.com <mailto:itensimon at gmail.com>> escreveu:
> there are “plenty” of polyphonic aftertouch controllers on the market, some of the newer MPE hardware controllers use CC messages for this though. (https://www.midi.org/midi-articles/midi-polyphonic-expression-mpe <https://www.midi.org/midi-articles/midi-polyphonic-expression-mpe>). some of them also have release velocity. 
> 
> examples of such controllers please?
> 
>  
> there are also quite some softsynths that handle release velocity (https://vital.audio <https://vital.audio/>  for a free example), so i would not exactly say this is that rare. and also it will get more common again i guess.
> 
> 
> 
>> On 1 Oct 2022, at 15:36, Alexandre Torres Porres <porres at gmail.com <mailto:porres at gmail.com>> wrote:
>> 
>> Cool, but not a 'classic keyboard' controller. I don't know any modern one with release velocity, and also with polyphonic aftertouch (at least a decent/proper one that is not a pad and actually uses pressure after you press the note).
>> cheers
>> 
>> Em sex., 30 de set. de 2022 às 17:09, Peter Brinkmann <peter.brinkmann at googlemail.com <mailto:peter.brinkmann at googlemail.com>> escreveu:
>> There's a new controller that uses Note Off velocity in an interesting way --- the Artinoise re.corder <https://www.recorderinstruments.com/en/> sends Note Off with nonzero velocity between slurred notes.
>> 
>> On Fri, Sep 30, 2022 at 9:30 AM Alexandre Torres Porres <porres at gmail.com <mailto:porres at gmail.com>> wrote:
>> Hi, the ELSE library has [else/note.in <http://note.in/>] and [else/note.out] which can handle proper note off messages. There's an object in cyclone (and also in MAX, of course) that can do that too, called [cyclone/xnotein] and [cyclone/xnoteout].
>> 
>> The use case of this is very rare as modern controllers don't really send note off messages anymore. I bought an old controller from the 80s that can do this, cause I'm a nerd and gear slut.
>> 
>> Note Off messages start with channel messages from 128 to 143 (128 being channel 1 up to 143 being channel 16) as Dan's test patch points out. You can use raw midi input from vanilla to listen to this and get the next two values which are MIDI note and release velocity. 
>> 
>> I would also like this to be available in vanilla, but, hey, well, there are the mentioned externals already and this is quite rare as I pointed out. If you need to do it as a pure vanilla application for whatever reason, you can create such abstraction with [midiin].
>> 
>> cheers
>> 
>> Em qui., 29 de set. de 2022 às 19:19, Dan Wilcox <danomatika at gmail.com <mailto:danomatika at gmail.com>> escreveu:
>> Pd treats noteoff as a noteon with 0 velocity, hence the [stripnote] object, etc.
>>  
>> If you want to explicitly handle noteoff, you can look at the midi tester patch for working with raw bytes...
>> 
>> 1. Help -> Browser...
>> 2. Pure Data / 7.stuff / tools / miditester.pd
>> 3. receive [pd channel messages]
>> 
>>> On Sep 27, 2022, at 9:56 PM, pd-list-request at lists.iem.at <mailto:pd-list-request at lists.iem.at> wrote:
>>> 
>>> Message: 2
>>> Date: Tue, 27 Sep 2022 17:42:15 +0200
>>> From: Lorenzo Sutton <lorenzofsutton at gmail.com <mailto:lorenzofsutton at gmail.com>>
>>> To: pd-list at lists.iem.at <mailto:pd-list at lists.iem.at>
>>> Subject: Re: [PD] MIDI / STATUS_BYTE / noteOn - noteOff mesage
>>> Message-ID: <b3832427-9b6d-ea0e-3d34-82245176e5ba at gmail.com <mailto:b3832427-9b6d-ea0e-3d34-82245176e5ba at gmail.com>>
>>> Content-Type: text/plain; charset=UTF-8; format=flowed
>>> 
>>> Hi,
>>> 
>>> On 26/09/2022 20:43, Maurin Donneaud wrote:
>>>> Dear List
>>>> 
>>>> Looking at the MIDI 1.0 documentation :
>>>> https://www.midi.org/specifications-old/item/table-2-expanded-messages-list-status-bytes <https://www.midi.org/specifications-old/item/table-2-expanded-messages-list-status-bytes>
>>>> 
>>>> I notice that the MIDI NOTES are transmitted over three bytes
>>>> ??? byte 1 -> STATUS_BYTE [chan & function]
>>>> ??? byte 2 -> DATA_BYTE [note] (0-127)
>>>> ??? byte 3 -> DATA_BYTE [velocity] (0-127)
>>>> 
>>>> I'm wandering if Pd have a simple object to extract the noteOn / noteOff 
>>>> message from the STATUS_BYTE.
>>> 
>>> I think you should be able with [midiin].
>>> 
>>> Note that as per MIDI spec, 'note off' can be either an explicit 'note 
>>> off' message also containing a 'release velocity' value or (more common) 
>>> a note on with velocity equal to zero (for example this is how Pd does a 
>>> note on/off if you use the [makenote] object.
>>> 
>>> Lorenzo
>> 
>> --------
>> Dan Wilcox
>> @danomatika <http://twitter.com/danomatika>
>> danomatika.com <http://danomatika.com/>
>> robotcowboy.com <http://robotcowboy.com/>
>> 
>> 
>> 
>> _______________________________________________
>> Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing list
>> UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list <https://lists.puredata.info/listinfo/pd-list>
>> _______________________________________________
>> Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing list
>> UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list <https://lists.puredata.info/listinfo/pd-list>
>> _______________________________________________
>> Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing list
>> UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list <https://lists.puredata.info/listinfo/pd-list>
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20221004/40a6a750/attachment-0001.htm>


More information about the Pd-list mailing list