Sysex in mac os x
What is the current status of sysex support on Mac OS X?
When I try to create "sysexin", I get the message "sysexin: works under Linux only".
(The same for "midiin")
However it looks like it is supported in the code ( pmmacosxcm.c ).
What about sysex out? Has the status changed from connecting message boxes to "midiout" (see http://puredata.hurleur.com/sujet-417-sysex)
Changing midi sounds and more
1. use "program change" MIDI messages, and optionally "bank select" (a particular "control change" controller) MIDI messages
2. from Pd's help browser -> 5.reference -> 0.INTRO.txt:
------------------------------ MIDI ----------------------------------
notein ctlin pgmin bendin touchin polytouchin midiin sysexin - MIDI input
noteout ctlout pgmout bendout touchout polytouchout midiout - MIDI output
makenote - schedule a delayed "note off" message corresponding to a note-on
stripnote - strip "note off" messages
Any suggestions?
Assumptions:
The drum kit generates MIDI data.
You want to play sounds by MIDI from an external sampler/drum-box
You want to learn more about Pd and not have someone hand you your project on a plate
-
Decode the midi - you need to create a [midiin] object and use [select] and [route] to catch the events when the pedal is pressed.
-
Create a step sequencer that inserts events in a cyclic buffer/storage system (in overwrite mode) *hard part
-
Use a toggle to switch the recording on and off with alternate pedal events.
-
Connect output of the step sequencer to a [midiout] object or to some drum synthesisers you make in Pd.
-
Add a metronome bleep so you can keep time.
-
Pick up your drum sticks...
(Note - you haven't thought about (or told us about) some still unsolved problems. A sequencer capable of making polyrythmns needs more than one concurrently running sequence, same timebase but unrelated bar lengths. Work on that first because it defines an important software engineeing decision which effects how your sequencer must work (hint: is it track based or layer based or something else? That effects how you delete events (unless you plan on playing everything right first time))
Sysex
Well you need to be specifying them as ints like 127, 205, 209 etc. But I just been reading through the list archives and it doesn't look good. Hope I'm wrong but my gut instinct is "Gordon! Get out of there!" It looks like mess. Posts from Nov 2005 on the subject of broken [midiout], I get the same stuff so I can't test it for you but under linux/Alsa you can't seem to send raw bytes. I just get a "putbyte not implemented" I found some other posts on MacOSX saying similar bad things about [midiin] The searchable archs only go up to 3 months ago so maybe someones hacked it, but yu'll have to find an external for yourself that works.
One thought though.. since timing isn't critical for sysex it opens the door to all sorts of possible hacks, like using a pipe and external script to poke btyes at the midi port.
I'll have another browse about tomorrow. good luck.
Sysex
wow
ok
so
...
maybe some hex conversion is in order?
here's what i've tried
messages with 1st hex values then decimal values (which i think obviously won't do the trick since the module is expecting hex values_?) to midiout.
no dice.
then some attempts at caturing incoming sysex data.
again, no luck using inlet (midiin is unfortunately not supported on os x) or ctrlin.
one little interesting thing, when i have set up messages and banged them to midiout, i get an error: midiout: no method for 'F7' which i think proves that PD doesn't natively understand hexadecimals.
any ideas for capturing sysex data using PD with os 10.3.9 would be extremely well appreciated.
i'll have another go ...
_j.
Sysex
http://home.worldoptions.com.au/jonescnt/jonescnt/sysexman.htm
What Illdas says sounds about right. Remember sysex can be quite long. I would try catching it in a textfile or qlist (see that debugger I was playing about with juliolucio -
http://puredata.hurleur.com/message-1595.html#p1595 ). Get the capture right first - you might want to convert to ints 0-255 , when that's working try squirting it back out a [midiout] raw stylee.
Sysex
I'm not a Sysex expert but I woudl expect you could create your Sysex messages using 'message' boxes and connect them to a 'midiout'...
Maybe try sending Sysex messages to it that you can then keep and use connected to 'midiout' ?
Midi clock, sync, PD following a sequencer?
yeah, from what i'm reading, midiout seems like the best bet.
[251] = continue
[248] = stop
bummer that it doesn't work on your machine. doesn't work for me either, i'm on a mac.
Midi clock, sync, PD following a sequencer?
just found this too.....for midi-syncing any apps within windows. it's free too, which is good.
Hey, that's perfect, yeah. Now all I need is a PD object that generates MIDI Clock. Anyone know of something like that? Also, when is win32 PD going to support the 'midiout' object?
Multiple midioutdev problem in winxp
i am having problems getting midi data to both outputs of my 2x2 usb midi interface... i specify -midioutdev 1,2 (even though under the -listdev command my two outputs are listed as "0" and "1" ) i check under the midi settings tab in pd and my devices are listed correctly... but when i use the midiout object i only get data to the device that is listed first in the midi settings box...
using 0.37-1 and winxp... edirol usb device if it matters...
thanks...