[sdiy] Anyone know of a device that does no-added-delay MIDI filtering?
Bob Weigel
sounddoctorin at imt.net
Mon Mar 6 01:16:17 CET 2006
Ahh Ingo understand me :-). Thank you. Yes we concur. As it turns out
because it doesn't work on all of the machines I even have I wouldn't
probably mess with it. "Food for thought" which..sometimes leads to
*other* useful ideas and expands our way of preceiving things...those of
us who .. oh..I won't say it :-).. hehe
In terms of hardware your suggestion is certainly viable I'd think you
could also just use a multi-channel uart with a pic. I'm trying to
think though..what chip would that be since I'm only aware of ones that
are really high speed and expensive probably at the moment. I have a
drawer full of 6850's that I need to use up anyway at the moment. -Bob
Ingo Debus wrote:
>
> Am 05.03.2006 um 03:11 schrieb Bob Weigel:
>
>> 0) On boot up, zeros are stored in memory locations which will be
>> used to store 'last controller value'. So one for each controller
>> type. Also center pitch will be stored in a two byte location. And
>> zero AT (poly not necessary since no midi equipped older synths have
>> poly AT )
>>
>> 1) all incoming status bytes go through all ports that are set up
>> for *this* type of filtering (was thinking of an option switch to
>> turn it on to standard buffer before send in case a machine like
>> P600 isn't compatable with the scheme).
>> 2) If the CPU sees that a status byte is not intended for a machine
>> it was just sent to, it doesn't send the following 2 bytes for a
>> note message. Rather it subsitutes NOTE 0...or NOT 127...neither of
>> which will trigger many old synths I believe :-). I at least have
>> some that don't respond including the Siel as I recall. Then
>> selects zero for velocity probably.
>>
>> If it's a controller message, and it's not for this synth, then the
>> value to follow is substituted for the 'last value' saved in memory.
>
>
>
> Interesting concept, but IMHO it's more "food for brain" than of
> practical use. One MIDI byte takes only aboutt 1/3 of a millisecond,
> so I doubt that it's really worth the effort.
>
> But anyway...
> You'd need a hardware multiplexer (controlled by the micro) to switch
> the output between the MIDI input and the serial output of the micro.
> If the MIDI output was hard wired to the micro's serial out, you'd
> still get the minimum latency of one MIDI byte. The micro can only re-
> send a byte after it has been completely received.
> Then I don't think it's a good idea to replace *all* unwanted Note
> messages (Note On and Note Off) with a Note On that is out of the
> receiving synth's range. The synth won't sound this note, but it
> probably gets clogged. You could perhaps send Note-Ons and Note-Offs
> alternatingly.
>
> For the controller thing, you'd need plenty of RAM. You'd have to
> store the values of all 128 controllers (plus Pitch Bend plus
> Aftertouch) for all outputs.
>
> Ingo
>
>
More information about the Synth-diy
mailing list