Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
11/30/08 21:10
Read: times


 
#160442 - MIDI Trouble ...
Responding to: ???'s previous message
Chico,

Early in the receive process you mask off the least sig. nibble. Because of this, your test of the accumulators least sig bit is pointless as you will always fall thru to ProcessMidiData. You will then process based upon either the previous byte being a Note On/Off msg. or an initialized or random value.

Imagine MIDI Running Status. How would that perform with the existing code? This could be an alternate reason for you situation where differing host data streams perform differently, depending upon if they issue 3 byte MIDI or 2 byte Running Status pairs.

A technique that i've used allocated a flag for "MIDI SYNC". To achieve MIDI SYNC you must receive a MIDI Status byte you support. You store this for comparison with future Status bytes and any non-Status bytes received are interpreted as NOTE/VELOCITY (data1/data2) pairs.

Real Time Status bytes can intervene within valid Status exchange so if you don't support them one way of handling them is to drop them on the floor at time of receipt. In any case they don't impact MIDI SYNC.

Another thought, handle msg parsing and framing in the foreground and just buffer MIDI in interrupt. This allows more headroom for message handling with payback a direct function of how verbose your MIDI Host is and/or how quickly your processor executes code.

regards,
p


List of 19 messages in thread
TopicAuthorDate
Midi trouble with Keyboard!            01/01/70 00:00      
   Blame the computer?            01/01/70 00:00      
      I'm lost            01/01/70 00:00      
         Check for differences            01/01/70 00:00      
            you are right...            01/01/70 00:00      
         First check grounding            01/01/70 00:00      
   ==CODE==            01/01/70 00:00      
   Can I post...            01/01/70 00:00      
   MIDI Trouble            01/01/70 00:00      
      I can be wrong...            01/01/70 00:00      
         MIDI Trouble ...            01/01/70 00:00      
            Should be JB ACC.7 ...            01/01/70 00:00      
   Maybe I discovered something, but have no clue to solve            01/01/70 00:00      
      Midi Thru Problems...            01/01/70 00:00      
         Same problem            01/01/70 00:00      
            MIDI Head Scratcher ..            01/01/70 00:00      
               Data is arriving corrupted            01/01/70 00:00      
   tried simplest way            01/01/70 00:00      
      Already tried this            01/01/70 00:00      

Back to Subject List