MIDI signalene ble opprinnelig utviklet som et middel til å kommunisere mellom to elektroniske instrumenter , for eksempel tastatur og synthesizere . Over tid , ble protokollene tilpasset og utviklet for å arbeide med de interne synthesizere innenfor hjem datamaskiner og personlig elektronikk . MIDI- signaler inneholder ingen lyddata av sine egne. De bare overfører instruksjoner til maskinvaren , som deretter genererer lydsignaler basert på disse instruksjonene. Status Bytes eller Command Bytes
Hver MIDI signal overføres inneholder minst én byte , selv om to bytes er mer vanlig og flere byte kan noen ganger bli brukt . Den første av de to eller flere byte i en MIDI- signal er kjent som kommandoen byte eller status -byte . Hver byte inneholder en serie på 8 biter av data . Statusen byte er unik blant andre byte i signal i at hans inneholder en instruksjon i den syvende bit i serien sin . Andre bytes i en MIDI signal ikke har en instruks til stede i sitt syvende bit . Den syvende bit instruerer vanligvis et notat på en bestemt kanal for å slå på eller av , men andre instruksjoner kan være inneholdt i tillegg. Disse inkluderer en " aftertouch "-innstillingen , som simulerer nøkkelen press , samt endringer i banen og kontroll av notatet . Operere
midi kanaler
MIDI-enheter 16 kanaler med lyd . Hver av disse kanalene er konfigurert for å spille en bestemt tale . For eksempel kan en kanal spille en syntetisert gitarlyd , mens en annen spiller en pianolyd og enda en spiller perkusjon . De fleste MIDI- enheter viser disse kanalene nummerert fortløpende fra 1 til 16. , selv om informasjonen i MIDI status byte vises i heksadesimal , eller base seksten format. Heksadesimale tall er representert ved tallene 0 til 9 og bokstavene A til F , så det heksadesimale tallet 0 faktisk representerer det første MIDI kanal, eller kanal en. Heksadesimalt nummer 1 representerer den andre MIDI -kanal og så videre, med A til F representerer kanalene 11 til 16 .
Kommandoer og kanaler
Hver kommando byte inneholder to typer data . Betydelig, inneholder halvparten av byte MIDI -kommandoen . Den andre andre halvparten av byte inneholder kanaldataene relevante for den kommandoen. Denne informasjonen vises via to heksadesimale verdier, med den første verdien dikterer kommandoen og den andre verdien bestemme kanal . For eksempel vil en heksadesimal verdi av 9A sende notatet -on -kommandoen til den ellevte MIDI kanal av enheten.