[PD] MIDI / STATUS_BYTE / noteOn - noteOff mesage

Alexandre Torres Porres porres at gmail.com
Fri Sep 30 18:28:22 CEST 2022


Hi, the ELSE library has [else/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>
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 wrote:
>
> Message: 2
> Date: Tue, 27 Sep 2022 17:42:15 +0200
> From: Lorenzo Sutton <lorenzofsutton at gmail.com>
> To: 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>
> 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
>
> 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
> robotcowboy.com
>
>
>
> _______________________________________________
> Pd-list at lists.iem.at mailing list
> UNSUBSCRIBE and account-management ->
> https://lists.puredata.info/listinfo/pd-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20220930/3f98924c/attachment.htm>


More information about the Pd-list mailing list