Czesc Michal,
thanks for a bug report... actually, two bug reports -- one for xeq_parse, the other for the Pd's 'bendin'/'bendout' code!
When I print from the [xeq_parse]'s 6th outlet I get: 14401 and I don't understand why...
and rightly so, because I screwed things up. It should have sent 8432. Pitch bend data is little-endian (while midi files use big-endian numbers, and I guess I was then assuming everything was big-endian:)
bendin object lets me read a 14 bit(?) value for pitch bend (out the left outlet) and
channel (right outlet).
yeah, it is in the range 0..16383. But the range accepted by a 'bendout' object is -8192..8191. So instead of [bendin]->[bendout] one has to put [bendin]->[- 8192]->[bendout].
I tried midiin with midiparse (maxlib) but it seems to be converted to 7 bit so it
wouldn't help...
do you really mean maxlib -- I have thought 'midiparse' was available through the cyclone only. I have a note in the source about checking that max/midiparse filters lsb out (perhaps I need to recheck this?)
I have all but started a 0.2 branch of xeq. But this is not so easy. Allocating time to Pd, even to just reading this list, is a luxury I barely afford these days...
Krzysztof
Michal Seta wrote: ...
I'm trying to record into xeq_record. The notes are recording fine, however I really
need to capture the pitch bend messages. I imported a midifile to take a look and I see how the bend messages show up. I get:
0 1-track 224 112 65 1 ;
which I understand as: time, track name, pitch bend status byte (0xe0), lower 7 bits ,
upper 7 bits and finally channel number. Right?