Mine sisu juurde

MIDI: erinevus redaktsioonide vahel

Allikas: Vikipeedia
Eemaldatud sisu Lisatud sisu
trykiviga ja välislink
Resümee puudub
 
(ei näidata 8 kasutaja 22 vahepealset redaktsiooni)
1. rida: 1. rida:
{{ToimetaAeg|kuu=september|aasta=2012}}
{{ToimetaAeg|kuu=september|aasta=2012}}


[[Pilt:NoteNamesFrequenciesAndMidiNumbers.svg|thumb|right|Noodi nimed ja MIDI noodi numbrid.]]
[[Pilt:NoteNamesFrequenciesAndMidiNumbers.svg|pisi|Noodi nimed ja MIDI noodi numbrid]]
[[Pilt:Pitch notation.png|thumb|[[C (muusika)|C]] erinevates [[oktaav]]ides MIDI süsteemis]]
[[Pilt:Scientific pitch notation octaves of C.png|pisi|[[C (muusika)|C]] eri [[Oktav (helikõrguspiirkond)|oktavites]] MIDI süsteemis]]
'''MIDI''' (akronüüm ingliskeelsest fraasist '''''M'''usical '''I'''nstrument '''D'''igital '''I'''nterface''; ka '''MIDI-liides''') on [[1980]]-ndate alguses loodud ja [[1982]] määratletud [[andmevahetusprotokoll|andmevahetuse (-edastuse) protokoll (keel)]], mis võimaldab [[elektrooniline instrument|elektroonilistel instrumentidel]], [[arvuti]]tel ja teistel seadmetel (näiteks MIDI-t toetavad [[valgustusseadmed]] teatrites) omavahel suhelda, üksteist juhtida ja [[sünkronisatsioon|sünkroniseerida]]. Eelduseks on, et seadmed toetavad MIDI standardit ja nende vahel on MIDI-ühendus (standardne MIDI-kaabel või näiteks [[USB]]-MIDI kasutajaliides) või '''[[WIDI]]'''-ühendus ("traadita" MIDI ehk ''Wireless MIDI''). '''MIDI'''ks nimetatakse ka kaabli või WIDI kaudu edastatavat MIDI teavet.


'''MIDI''' (akronüüm ingliskeelsest fraasist ''Musical Instrument Digital Interface'', muusikainstrumendi digitaalne liides) on [[1981]]. aastal loodud [[andmevahetusprotokoll]], mis võimaldab [[elektroonilised muusikainstrumendid|elektroonilistel muusikainstrumentidel]], [[arvuti]]tel ja teistel seadmetel omavahel suhelda, üksteist juhtida ja [[sünkroonsus|sünkroonida]].
MIDI standard ei edasta heli- või näit valgussignaali, vaid edastab digitaalsed käsklusi – sündmussõnumeid. Muusikariistades edastatav info hõlmab endas teavet näit [[tempo]], [[helikõrgus]]e, [[oktaav]]i, [[helitugevus]]e, [[modulatsioon]]i, heli[[panoraam]]is paiknemise jne kohta.


Eelduseks on, et seadmetel on MIDI-liides, mistõttu nad toetavad MIDI standardit ja nende vahel on MIDI-ühendus (standardne MIDI-kaabel või näiteks [[USB]]-MIDI kasutajaliides) või '''[[WIDI]]'''-ühendus ("traadita" MIDI ehk ''Wireless MIDI''). '''MIDI-ks''' nimetatakse ka kaabli või WIDI kaudu edastatavat MIDI teavet.
MIDI on alates oma ilmumisest [[1983]]. aastast saanud levinud standardiks [[muusikariist]]ade (näit elektroonilised klahvpillid, kitarriprotsessorid, trummimasinad, sekventserid jne) juhtimisel ja sünkroniseerimisel.

MIDI standard käsitleb digitaalsed käske sündmuste teateid ja nende edastamist, mis hõlmab teavet näiteks [[tempo]], [[helikõrgus]]e, [[Oktav (helikõrguspiirkond)|oktavi]], [[helitugevus]]e, [[modulatsioon]]i, heli[[panoraam]]is paiknemise jne kohta.

MIDI on alates oma ilmumisest [[1983]]. aastast saanud levinud standardiks [[muusikariist]]ade (näiteks elektroonilised klahvpillid, kitarriprotsessorid, trummimasinad, sekventserid jne) juhtimisel ja sünkroonimisel.


==MIDI lühiajalugu==
==MIDI lühiajalugu==


Elektrooniliste [[muusikainstrument|muusikainstrumentide]] algusaastatel olid [[süntesaator|süntesaatorid]] tavaliselt monotoonsed seadmed. Piirangust, taasesitada üht nooti korraga, läksid elektrooniliste muusikainstrumentide tootjad mööda tehnoloogiaga, mis võimaldas luua elektrilise ühenduse erinevate süntesaatorite vahel. Üks süntesaator määrati ülemaks ning sellega võimaldati juhtida alluvate helimoodulite taasesitusparameetreid. Nimetatud ülem-alluv-süsteemi juhtimiseks töötati välja algeline juhtsignaal.
Elektrooniliste [[muusikainstrument]]ide algusaastatel olid [[süntesaator]]id tavaliselt monotoonsed seadmed. Piirangust, taasesitada üht nooti korraga, läksid elektrooniliste muusikainstrumentide tootjad mööda tehnoloogiaga, mis võimaldas luua elektrilise ühenduse erinevate süntesaatorite vahel. Üks süntesaator määrati ülemaks ja sellega võimaldati juhtida alluvate helimoodulite taasesitusparameetreid. Nimetatud ülem-alluv-süsteemi juhtimiseks töötati välja algeline juhtsignaal.
Süsteem põhines varajaste süntesaatorite omadusel, kus nende mängimisel tekkiva [[alalispinge|alalispingega]] oli võimalik juhtida teise instrumendi pingega juhitud võnkumisi ning pingega juhitud [[võimendi|võimendeid]]. Kuna mitmed sel ajal kasutusel olnud süntesaatorid genereerisid alalissignaali, mille [[Pinge (elekter)|pinge]] suurenes ühe [[volt|voldi]] võrra okaatvi kohta, siis oli võimalik kasutada seda juhtpinget normpingena. See võimaldas edastada helikõrgust sisaldavat informatsiooni teistele süntesaatoritele.
Süsteem põhines varajaste süntesaatorite omadusel, kus nende mängimisel tekkiva [[alalispinge]]ga oli võimalik juhtida teise instrumendi pingega juhitud võnkumisi ja pingega juhitud [[võimendi|võimendeid]]. Kuna mitmed sel ajal kasutusel olnud süntesaatorid genereerisid alalissignaali, mille [[Pinge (elekter)|pinge]] suurenes ühe [[volt|voldi]] võrra okaatvi kohta, siis oli võimalik kasutada seda juhtpinget normpingena. See võimaldas edastada helikõrgust sisaldavat informatsiooni teistele süntesaatoritele.
Nootide algushetke ja kestuse sünkroniseerimiseks kasutati väravsignaali, kuid kuna tootjad kasutasid oma elektroonilistes instrumentides erinevaid sünkroniseerimisimpulsside [[taktsagedus|taktsagedusi]], siis oli mitteühilduvate seadmete sünkroniseerimine keerukas ning nõudis lisaseadmeid.
Nootide algushetke ja kestuse sünkroonimiseks kasutati väravsignaali, kuid kuna tootjad kasutasid oma elektroonilistes instrumentides erinevaid sünkroonimisimpulsside [[taktsagedus]]i, oli mitteühilduvate seadmete sünkroonimine keerukas ja nõudis lisaseadmeid.
[[Digitaalelektroonika|Digitaalelektroonika]] areng võimaldas otsida alternatiive analoogjuhtimisele, mistõttu alustasid David Smith ja Chet Wood digitaalset elektrooniliste instrumendi juhtreeglistiku arendamist. Väljatöötatav protokoll nimetati Süntesaatori Universaalliideseks ning 1981. aasta sügisel tutvustati juhtreeglistikku Heliinsenerluse Kogukonnale (AES). Kahe järgneva aasta jooksul tehti, koostöös elektrooniliste instrumentide suurtootjatega, protokolli standardis muudatusi ning 1983. aastal nimetati Süntesaatori Universaalliides ümber MIDIks.
[[Digitaalelektroonika]] areng võimaldas otsida alternatiive analoogjuhtimisele, mistõttu alustasid David Smith ja Chet Wood digitaalset elektrooniliste instrumendi juhtreeglistiku arendamist. Väljatöötatav protokoll nimetati süntesaatori universaalliideseks ja 1981. aasta sügisel tutvustati juhtreeglistikku heliinsenerluse kogukonnale (AES). Kahe järgmise aasta jooksul tehti koostöös elektrooniliste instrumentide suurtootjatega protokolli standardis muudatusi ja 1983. aastal nimetati süntesaatori universaalliides ümber MIDI-ks.


==Standardsed MIDI rakendused==
==Standardsed MIDI rakendused==


MIDI võimaldab elektrooniliste instrumentide vahel [[andmeedastus|suhtluse]] ning teeb võimalikuks ühel seadmel juhtida teist. Näiteks, MIDI instrumendil noodi mängimine genereerib digitaalsignaali, millega on võimalik mängida noot teisel elektroonilisel instrumendil. MIDI juhtimine võimaldab instrumete paigutada väiksematesse moodulitesse ning neid samaaegselt kasutada. Samuti on MIDIga võimalik instrumendi helisid programmeerida ja muuta helide sigaalide kuju. Filtrite rakendamine võimaldab muuta helide [[tämber|tämbreid]] ning luua funktsioone, mis on suutelised [[filter|filtrite]] parameetreid ettemääratud aja jooksul muutma. Tarkvaraliste ja riistvaraliste muusikainstrumentide juhtnuppude ja parameetrite juhtimine on võimalik määrata [[MIDI kontroller|MIDI kontrolleri]] füüsiliste lülitite alla. Kasutades muundureid, mis konverteerivad MIDI signaale analoogjuhtsignaalideks, on võimalik MIDI seadmetega juhtida ka analoogsüntesaatoreid.
MIDI võimaldab elektrooniliste instrumentide vahel [[andmeedastus|suhtluse]] ja teeb võimalikuks ühel seadmel juhtida teist. Näiteks MIDI-instrumendil noodi mängimine genereerib digitaalsignaali, millega on võimalik mängida noot teisel elektroonilisel instrumendil. MIDI juhtimine võimaldab instrumente paigutada väiksematesse moodulitesse ja neid samaaegselt kasutada. Samuti on MIDIga võimalik instrumendi helisid programmeerida ja muuta helide signaalide kuju. Filtrite rakendamine võimaldab muuta helide [[tämber|tämbrit]] ning luua funktsioone, mis on suutelised [[Filter (tarkvara)|filtrite]] parameetreid määratud aja jooksul muutma. Tarkvaraliste ja riistvaraliste muusikainstrumentide juhtnuppude ja parameetrite juhtimine on võimalik määrata [[MIDI kontroller]]i füüsiliste lülitite alla. Kasutades muundureid, mis teisendavad MIDI signaale analoogjuhtsignaalideks, on võimalik MIDI-seadmetega juhtida ka analoogsüntesaatoreid.


==MIDIga komponeerimine==
==MIDI-ga komponeerimine==


Arvutitarkvara või spetsiaalsete riistavaraliste tööjaamade abil on võimalik heliloomingu ja –töötluse eesmärgil MIDI sündmusi järjestada, muuta ning luua. Nii saab modifitseerida MIDI arranžeeringu tempot, helistikku ja instrumente ilma, et ühtegi instrumenti peaks uuesti salvestama. MIDIt kasutatakse ka kõrgekvaliteediliste digitaalsete [[sämpel|helisämplite]] juhtimiseks.
Arvutitarkvara või spetsiaalsete riistvaraliste arvutite abil on võimalik heliloomingu ja -töötluse eesmärgil MIDI sündmusi järjestada, muuta ja luua. Nii saab modifitseerida MIDI arranžeeringu tempot, helistikku ja instrumente ilma, et ühtegi instrumenti peaks uuesti salvestama. MIDIt kasutatakse ka kõrgekvaliteediliste digitaalsete [[sämpel|helisämplite]] juhtimiseks.
Mitmetesse tarkvaralistesse helindustööjaamadesse (DAW) on projekteeritud MIDI implementatsioonide funktsionaalsus. Teiste funktsionaaluste seas, kuulub helindustööjaamade võimekusse graafiliselt esitada MIDI nootide andmeid ning neid töödelda. Muuta saab
Mitmetesse tarkvaralistesse helindusarvutitesse (DAW) on projekteeritud MIDI implementatsioonide funktsioon. Teiste funktsioonide seas saavad helindusarvutid graafiliselt esitada MIDI nootide andmeid ja neid töödelda. Muuta saab
MIDI nootide vältust, helikõrgust, helitugevust ning lisada modulatsiooniefekte, nootide libistamist ühelt helikõrguselt teisele.
MIDI nootide vältust, helikõrgust ja helitugevust ning lisada modulatsiooniefekte, nootide libistamist ühelt helikõrguselt teisele.


==Teisi MIDI rakendusi==
==Muid MIDI rakendusi==


MIDI reeglistikku on rakendatud ka mittemuusikaliste süsteemide juhtimiseks. MIDIt on kasutatud lavavalgustussüsteemide lülitamiseks, sünkroniseerimiseks ja automatiseerimiseks. Ettevõtte Apple tarkvara „Apple Motion“ võimaldab MIDIga juhtida videotöötlusparameetreid. 1987. aastal kasutati MIDI protokolli arvutite omavahelisse võrku lülitamiseks, eesmärgiga mängida arvutimängu „Oxyd“. Lisaks kasutatakse MIDIt koduvalgustuse ja kodumasinate juhtimiseks.
MIDI reeglistikku on rakendatud ka mittemuusikaliste süsteemide juhtimiseks. MIDI-t on kasutatud lavavalgustussüsteemide lülitamiseks, sünkroonimiseks ja automatiseerimiseks. Ettevõtte Apple tarkvara "Apple Motion" võimaldab MIDI-ga juhtida videotöötlusparameetreid. 1987. aastal kasutati MIDI protokolli arvutite omavahelisse võrku lülitamiseks, eesmärgiga mängida arvutimängu "Oxyd". Lisaks kasutatakse MIDI-t kodudes valgustuse ja kodumasinate juhtimiseks.
==MIDI Instrumendid==
==MIDI-instrumendid==
MIDI instrument sisaldab MIDI sõnumite edastamiseks ja vastuvõtmiseks [[sisend/väljund|sisend- ja väljundpesasid]], protsessorit sisend- ja väljundsignaalide töötlemiseks, [[kasutajaliides|kasutajaliidest]], mis võimaldaks seadet programmeerida, heli tekitamiseks vajalikku elektrilist lülitust ning juhtsüsteemi. Tavaliselt salvestatakse MIDI instrumendi helid ning [[operatsioonisüsteem|operatsioonisüsteem]] instrumendi [[püsimälu|püsimällu]]. MIDI instrumendiks võib olla ka klaverilaadsete klahvideta üksikmoodul.
MIDI-instrument sisaldab MIDI-teadete edastamiseks ja vastuvõtmiseks [[sisend/väljund|sisend- ja väljundpesasid]], protsessorit sisend- ja väljundsignaalide töötlemiseks, [[kasutajaliides]]t, mis võimaldaks seadet programmeerida, heli tekitamiseks vajalikku elektrilist lülitust ja juhtsüsteemi. Tavaliselt salvestatakse MIDI-instrumendi helid ja [[operatsioonisüsteem]] instrumendi [[püsimälu|püsimällu]]. MIDI-instrumendiks võib olla ka klaverilaadsete klahvideta üksikmoodul.


==MIDI seadmestik==
==MIDI-seadmestik==
[[Pilt:MIDI connector2.svg|pisi|vasakul|püsti=0.50|alt=Diagram of a MIDI connector|MIDI pistikseadme kontakttihvtide paigutus]]


MIDI riistvaraline liides töötab asünkroonse [[jadaühendus]]ena boodikiirusega 31,25 kbd (+/- 1%), kusjuures andmeedastuseks kasutatakse üht [[bitt|algusbitti]], kaheksat andmebitti ja lõppbitti. [[paarsuskontroll|Paarsusbitte]] MIDI andmevahetuse käigus ei saadeta. Kokku edastatakse 320 mikrosekundilise ajavahemiku vältel 10 bitti ühe jadamisi saadetud baidi kohta. Edastatavates baitides saadetakse [[vähima kaaluga bitt]] esimesena. Algusbitt on määratud loogilise nullina ja lõppbitt loogilise ühena.
[[Pilt:MIDI connector2.png|thumb|left|upright=0.50|alt=Diagram of a MIDI connector|MIDI pistikseadme kontakttihvtide paigutus.]]
[[Maanduskontuur]]ide ja andmevigade vältimiseks on saatja elektriline lülitus ja vastuvõtja elektriline lülitus teineteisest [[optoisolaator]]iga eraldatud. Ahelas kasutatava optoisolaatori tõusuaeg ja langeaeg peab olema väiksem kui 2 mikrosekundit. Vastuvõtja elektriahel peab sisselülitamiseks tarbima vähem kui 5 mA [[elektrivool|voolu]].

Viie kontakttihvtiga 180-kraadine DIN-pesa. MIDI andmevahetuses ei kasutata ning sellest tulenevalt ei ühendata kontakttihvte 1 ja 3 saatja ning vastuvõtja elektriahelatesse. MIDI sisendpistikseadise kontakttihvt 2 jääb samuti ühendamata.
MIDI riistvaraline liides töötab asünkroonse [[jadaühendus|jadaühendusena]] boodikiirusega 31.25Kbd (+/- 1%), kusjuures andmeedastuseks kasutatakse üht [[bitt|algusbitti]], kaheksat andmebitti ning lõppbitti. [[paarsuskontroll|Paarsusbitte]] MIDI andmevahetuse käiguse ei saadeta. Kokku edastatakse 320 mikrosekundilise ajavahemiku vältel 10 bitti ühe jadamisi saadetud baidi kohta. Edastatavates baitides saadetakse [[vähima kaaluga bitt|vähima kaaluga bitt]] esimesena. Algusbitt on määratud loogilise nullina ning lõppbitt loogilise ühena.
MIDI-pesade ja pistikseadiste varjestusühendusi ei lülitata ühtegi MIDI riistvaraahelasse ega korpuse [[maandamine|maandusse]].
[[maanduskontuur|Maanduskontuuride]] ning andmevigade vältimiseks on saatja elektriline lülitus ning vastuvõtja elektriline lülitus teineteisest [[optoisolaator|optoisolaatoriga]] eraldatud. Ahelas kasutatava optoisolaatori tõusuaeg ja langeaeg peab olema väiksem kui 2 mikrosekundit. Vastuvõtja elektriahel peab sisselülitamiseks tarbima vähem kui 5mA [[elektrivool|voolu]].
MIDI [[peegelduspesa]] kasutamisel võib MIDI-sisendpesa ja peegelduspesa vahelises andmevahetuses esineda [[elektrisignaal|signaali]] degradeerumine nelinurksignaali tõusva ja langeva serva vahel. See on tingitud optoisolaatori reageerimiskestusest. Reageerimiskestusest tingitud ajastusvead seavad jadamisi MIDI ahelasse lülitatavate MIDI-seadmete arvule piirangu.
Viie kontakttihvtiga 180 kraadine DIN pesa. MIDI andmevahetuses ei kasutata ning sellest tulenevalt ei ühendata kontakttihvte 1 ja 3 saatja ning vastuvõtja elektriahelatesse. MIDI sisendpistikseadise kontakttihvt 2 jääb samuti ühendamata.
MIDI-seadmete omavaheliseks ühendamiseks kasutatavate kaablite maksimaalne pikkus on, veatõrjekoodi puudumise tõttu, 15 meetrit. Kasutatavaks kaabliks on varjestatud [[Keerdpaarjuhe|keerdpaarkaabel]], mille mõlemas otsas on viie kontakttihvtiga DIN-pistikseadis. Kaabli varjestus on ühendatud pistikseadiste teise kontakttihvtiga.
MIDI pesade ning pistikseadiste varjestusühendusi ei lülitata ühessegi MIDI riistvaraahelasse ega korpusese [[maandamine|maandusesse]].
[[Pilt:MIDI sõnumitüüpide diagramm.JPG|pisi|MIDI teatetüüpide diagramm]]
MIDI [[peegelduspesa|peegelduspesa]] kasutamisel võib MIDI sisendpesa ja peegelduspesa vahelises andmevahetuses esineda [[elektrisignaal|signaali]] degradeerumine nelinurksignaali tõusva ja langeva serva vahel. See on tingitud optoisolaatori reageerimiskestusest. Reageerimiskestusest tingitud ajastusvead seavad jadamisi MIDI ahelasse lülitatavate MIDI seadmete arvule piirangu.
[[Pilt:MIDI baiditüüpide diagramm.JPG|pisi|MIDI baiditüüpide diagramm]]
MIDI seadmete omavaheliseks ühendamiseks kasutatavate kaablite maksimaalne pikkus on, veatõrjekoodi puudumise tõttu, 15 meetrit. Kasutatavaks kaabliks on varjestatud [[Keerdpaarjuhe|keerdpaarkaabel]], mille mõlemas otsas on viie kontakttihvtiga DIN pistikseadis. Kaabli varjestus on ühendatud pistikseadiste teise kontakttihvtiga.

[[Pilt:MIDI sõnumitüüpide diagramm.JPG|thumb|MIDI sõnumitüüpide diagramm]]
[[Pilt:MIDI baiditüüpide diagramm.JPG|thumb|MIDI baiditüüpide diagramm]]


===Jadasiinide spetsifikatsioone MIDI süsteemides===
===Jadasiinide spetsifikatsioone MIDI süsteemides===

====USB====
====USB====


USB võimaldab süsteemi lisada kuni 127 välist seadet, mis on tinginud MIDI tööstuses tendentsi luua süsteeme, kus seadmete omavaheliseks ühendamiseks kasutatakse minimaalsel hulgal lisaühendusi. USB ühendused võimaldavad perifeeriaseadme ning arvuti vahel kahepoolse ühenduse, mis lihtsustab lõppkasutaja jaoks süsteemi kasutamist. Lõppkasutaja kasutajamugavuse suurendamiseks võimaldatakse ka USB seadmete [[käigultvahetus|käigultvahetus]].
USB võimaldab süsteemi lisada kuni 127 välist seadet, mis on tinginud MIDI tööstuses tendentsi luua süsteeme, kus seadmete omavaheliseks ühendamiseks kasutatakse minimaalsel hulgal lisaühendusi. USB-ühendused võimaldavad lisaseadme ja arvuti vahel kahepoolse ühenduse, mis lihtsustab lõppkasutaja jaoks süsteemi kasutamist. Lõppkasutaja kasutajamugavuse suurendamiseks võimaldatakse ka USB-seadmete [[käigultvahetus]].
USB 1.0 ja USB 2.0 standardite seadmetevahelise ühenduskaabli maksimaalseks pikkuseks on viis meetrit ning seadmeid, mille voolutarve on suurem, kui viissada milliamprit, tuleb elektrienergiaga varustada välise toiteseadme kaudu.
USB 1.0 ja USB 2.0 standardite seadmetevahelise ühenduskaabli maksimaalne pikkus on viis meetrit ning seadmeid, mille voolutarve on suurem kui 500 mA, tuleb elektrienergiaga varustada välise toiteseadme kaudu.


====FireWire====
====FireWire====


[[IEEE 1394|FireWire]] võimaldab, [[Valguskaabel|kiudoptilisi kaableid]] kasutades, edastada MIDI juhtimissignaale kuni saja meetri kaugusele. FireWire on suuteline MIDI süsteemi ühendama kuni 63 välist seadet ning, sarnaselt USB standardile, kasutab kahepoolseks suhtluseks keerdpaarkaablit. FireWire süsteemid toetavad käigultvahetust.
[[IEEE 1394|FireWire]] võimaldab [[Valguskaabel|kiudoptilisi kaableid]] kasutades edastada MIDI juhtimissignaale kuni saja meetri kaugusele. FireWire on suuteline MIDI süsteemi ühendama kuni 63 välist seadet ning, sarnaselt USB standardiga, kasutab kahepoolseks suhtluseks keerdpaarkaablit. FireWire-süsteemid toetavad käigultvahetust.


==MIDI andmevorming==
==MIDI andmevorming==


MIDI suhtlus saavutatakse mitmebaidiliste andmekogumitega, mis koosnevad ühest seisundibaidist, millele järgnevad üks või kaks andmebaiti.
MIDI suhtlus saavutatakse mitmebaidiliste andmekogumitega, mis koosnevad ühest seisundibaidist, millele järgnevad üks või kaks andmebaiti.
Tavaliselt ehitatakse MIDI instrumenti nii saatja kui ka vastuvõtja, kuid MIDI seade võib olla ka varustatud ainult ühega. Vastuvõtja teostab MIDI käsklusi ning võtab vastu MIDI andmeformaadis sõnumeid. Vastuvõtja riistvara koosneb optoisolaatorist, UARTseadmest ning muust kindla funktsiooni täitmiseks vajalikust riistvarast. MIDI andmeformaadis informatsiooni edastamiseks kasutab MIDI saatja UARTseadet ja signaalivõmendit.
Tavaliselt ehitatakse MIDI instrumenti nii saatja kui ka vastuvõtja, kuid MIDI seade võib olla ka varustatud ainult ühega. Vastuvõtja teostab MIDI-käske ja võtab vastu MIDI andmevormingus teateid. Vastuvõtja riistvara koosneb optoisolaatorist, UART-seadmest ning muust kindla funktsiooni täitmiseks vajalikust riistvarast. MIDI andmevormingus informatsiooni edastamiseks kasutab MIDI saatja UART-seadet ja signaalivõimendit.
MIDI sõnumeid võib edastada kuni üle 16 kanali ja sõnum koosneb ühest või enamast baidist.
MIDI-teateid võib edastada kuni üle 16 kanali ja teade koosneb ühest või enamast baidist.


==Sõnumitüübid==
==Teatetüübid==


MIDI sõnumid jaotatakse kahte põhikategooriasse: kanalisõnumid ja süsteemisõnumid
MIDI teated jaotatakse kahte põhikategooriasse: kanaliteated ja süsteemiteated.


===Kanalisõnumid===
===Kanaliteated===


Kanalisõnum kasutab sõnumi edastamiseks ühele kanalile seisundibaidist nelja bitti ning järelejäänud nelja bitti kasutatakse sõnumi defineerimiseks. Seega on kanalisõnumid mõeldud vastuvõtjatele, mille kanalinumber on kodeeritud kanalisõnumi seisundibaiti.
Kanaliteade kasutab teate edastamiseks ühele kanalile seisundibaidist nelja bitti ning järelejäänud nelja bitti kasutatakse teate defineerimiseks. Seega on kanaliteated mõeldud vastuvõtjatele, mille kanalinumber on kodeeritud kanaliteate seisundibaiti.
MIDI sõnumeid on võimalik edastada rohkem kui ühele kanalile korraga. Kanalit, millele edastatakse põhikäsud, nagu näiteks millisel programminumbril olla ning millist töörežiimi kasutada, nimetatakse kanali baaskanaliks. MIDI seadet on võimalik seadistada mitmel kanalil informatsiooni vastuvõtmiseks. Selliseid kanaleid nimetatakse häälkanaliteks.
MIDI teateid on võimalik edastada rohkem kui ühele kanalile korraga. Kanalit, millele edastatakse põhikäsud, nagu näiteks millisel programminumbril olla ning millist töörežiimi kasutada, nimetatakse kanali baaskanaliks. MIDI seadet on võimalik seadistada mitmel kanalil informatsiooni vastuvõtmiseks. Selliseid kanaleid nimetatakse häälkanaliteks.
Eristatakse kaht tüüpi kanalisõnumeid: häälsõnumid ning töörežiimisõnumid. Häälsõnumeid kasutatakse MIDI instrumendi häälte juhtimiseks ning neid edastatakse üle häälkanalite. Töörežiimisõnumeid kasutatakse, et defineerida MIDI instrumendi reageerimine häälsõnumile. Töörežiimisõnumid edastatakse üle baaskanali.
Eristatakse kaht tüüpi kanaliteateid: häälteated ja töörežiimiteated. Häälteateid kasutatakse MIDI instrumendi häälte juhtimiseks ning neid edastatakse üle häälkanalite. Töörežiimiteateid kasutatakse, et defineerida MIDI instrumendi reageerimine häälteatele. Töörežiimiteated edastatakse baaskanali kaudu.


===Süsteemisõnumid===
===Süsteemiteated===


Süsteemisõnumid ei sisalda kanalinumbreid. Kokku on võimalik eristada kolme tüüpi süsteemisõnumeid:
Süsteemiteated ei sisalda kanalinumbreid. Kokku on võimalik eristada kolme tüüpi süsteemiteateid:
Ühissõnumid on, olenemata kanalist, adresseeritud kõigile vastuvõtjatele.
ühisteated on, olenemata kanalist, adresseeritud kõigile vastuvõtjatele.
Reaalajasõnumeid kasutatakse sünkroniseerimiseks ning on mõeldud kõigile taktipõhistele süsteemiosadele. Reaalajasõnumid edastavad ainult seisundibitte. Reaalajasõnumeid on võimalik saata igal ajahetkel, ka erineva staatusega sõnumi baitide vahel. Sellisel juhul reaalajasõnumile reageeritakse või teda ignoreeritakse, pärast mida jätkub viimane vastuvõtmisprotsess.
Reaalajateateid kasutatakse sünkroonimiseks ning on mõeldud kõigile taktipõhistele süsteemiosadele. Reaalajateated edastavad ainult seisundibitte. Reaalajateateid on võimalik saata igal ajal, ka erineva staatusega teate baitide vahel. Sel juhul reaalajateatele reageeritakse või seda ignoreeritakse, seejärel jätkub viimane vastuvõtmisprotsess.
Süsteemi eksklusiivsõnumid võivad sisaldada suvalise arvu andmebaite ning sõnumite edastamine lõpetatakse eksklusiivsõnumi lõppbaidi(EOX) või suvalise teise seisundibaidiga. Lõppbait tuleks alati edastada süsteemi eksklusiivsõnumi lõpus. Sõnumid sisaldavad tootja identifitseerimiskoodi. Juhul, kui vastuvõtja ei tunne identifitseerimiskoodi, tuleks koodile järgnevaid andmeid ignoreerida.
Süsteemi eksklusiivteated võivad sisaldada suvalise arvu andmebaite ning teadete edastamine lõpetatakse eksklusiivteate lõppbaidi (EOX) või suvalise teise seisundibaidiga. Lõppbait tuleks alati edastada süsteemi eksklusiivteate lõpus. Teated sisaldavad tootja identifitseerimiskoodi. Kui vastuvõtja ei tunne identifitseerimiskoodi, tuleks koodile järgnevaid andmeid ignoreerida.
MIDI seadmete tootjatel on kohustus avalikustada identifitseerimiskoodile järgnev sõnumite andmevorming. See võimaldab kasutajatel ning arendajatel tootjate MIDI seadmetele ligipääseda.
MIDI-seadmete tootjatel on kohustus avalikustada identifitseerimiskoodile järgnev teadete andmevorming. See võimaldab kasutajatel ja arendajatel tootjate MIDI-seadmetele ligi pääseda.


==Andmetüübid==
==Andmetüübid==


MIDI edastab kaht tüüpi baite: seisundibaite ning andmebaite
MIDI edastab kaht tüüpi baite: seisundibaite ja andmebaite.


===Seisundibaidid===
===Seisundibaidid===


Seisundibaidid on kaheksabitised kahendsüsteemi numbrid, milles suurima kaaluga bitt on määratud loogilise ühena. Seisundibaitide ülesanne on määrata sõnumitüüp, ehk seisundibaidile järgnevate andmebaitide ülesanne. Uued seisundibaidid (v.a reaalajasõnumid) määravad vastuvõtja seisundi ka juhul, kui viimase sõnumi käsud jäid täitmata.
Seisundibaidid on kaheksabitised kahendsüsteemi numbrid, milles suurima kaaluga bitt on määratud loogilise ühena. Seisundibaitide ülesanne on määrata teate tüüp, ehk seisundibaidile järgnevate andmebaitide ülesanne. Uued seisundibaidid (v.a reaalajateated) määravad vastuvõtja seisundi ka juhul, kui viimase teate käsud jäid täitmata.


===Seisundi säilitamine===
===Seisundi säilitamine===


Kehtib häälsõnumite ja töörežiimisõnumite puhul. Seisundibaidi vastuvõtmisel ja tema käsu täitmisel jääb vastuvõtja seisundibaidi edastatud seisundisse seni, kuni vastu võetakse teistsugune seisundibait. Seetõttu on võimalik korduva seisundibaidi edastamise puhul korduvate baitide saatmine ära jätta ning edastada ainult andmebaite. Järelikult on seisundi säilitamise korral võimalik edastada sõnumeid, mis koosnevad ainult andmebaitidest.
Kehtib häälteadete ja töörežiimiteadete puhul. Seisundibaidi vastuvõtmisel ja tema käsu täitmisel jääb vastuvõtja seisundibaidi edastatud seisundisse seni, kuni vastu võetakse teistsugune seisundibait. Seetõttu on võimalik korduva seisundibaidi edastamise puhul korduvate baitide saatmine ära jätta ning edastada ainult andmebaite. Järelikult on seisundi säilitamise korral võimalik edastada teateid, mis koosnevad ainult andmebaitidest.
Seisundi säilitamise lõpetab suvalise teistsuguse seisundibaidi edastamine. Reaalajasõnumid ei tohi seisundi säilitamist mõjutada.
Seisundi säilitamise lõpetab suvalise teistsuguse seisundibaidi edastamine. Reaalajateated ei tohi seisundi säilitamist mõjutada.
Kõiki vastuvõetud seisundibaite ja nendele järgnevad andmebaite, mille ülesannet vastuvõtjas ei täideta, ignoreeritakse.
Kõiki vastuvõetud seisundibaite ja nendele järgnevad andmebaite, mille ülesannet vastuvõtjas ei täideta, ignoreeritakse.


101. rida: 101. rida:
===Andmebaidid===
===Andmebaidid===


Andmebaidid (v.a reaalajasõnumid) edastatakse pärast seisundibaiti. Sõnumi sisu kannavad üks või kaks kaheksabitilist andmebaiti, mille [[suurima kaaluga bitt|suurima kaaluga bitt]] on alati määratud loogilise nullina. Iga seisundibaidi kohta tuleb edastada õige arv andmebaite. Vastuvõtjad peavad enne sõnumi täitmist ootama, kuni kõik andmebaidid on vastuvõetud. Andmebaite, millele ei eelnenud valiidne seisundibait, tuleks ignoreerida juhul, kui tegemist ei ole seisundi säilitamisega.
Andmebaidid (v.a reaalajateated) edastatakse pärast seisundibaiti. Teate sisu kannavad üks või kaks kaheksabitilist andmebaiti, mille [[suurima kaaluga bitt]] on alati määratud loogilise nullina. Iga seisundibaidi kohta tuleb edastada õige arv andmebaite. Vastuvõtjad peavad enne teate täitmist ootama, kuni kõik andmebaidid on vastu võetud. Andmebaite, millele ei eelnenud valiidne seisundibait, tuleks ignoreerida juhul, kui tegemist ei ole seisundi säilitamisega.


== Vaata ka ==
== Vaata ka ==
107. rida: 107. rida:
* [[SoundFont]]
* [[SoundFont]]
* [[Downloadable Sounds|Downloadable Sounds (DLS)]]
* [[Downloadable Sounds|Downloadable Sounds (DLS)]]

== Kirjandus ==
* Huber David Miles. "The MIDI Manual". 2007
* "MIDI 1.0 Detailed Specification" 1995
* "Elementaarne MIDI" ([[Tõnu Kallaste]]; [[2002]], [[Viljandi Kultuurikolledž]]; ISBN 9985-78-547-9)
* Ajakirja [[Keyboard]] 2004. aasta MIDI sünnile pühendatud number


== Välislingid ==
== Välislingid ==
113. rida: 119. rida:
* [[Tõnu Kallaste]] koostatud [http://kultuur.edu.ee/~tonuk/Sonadr.html "Arvuti-MIDI mini-sõnastik"]
* [[Tõnu Kallaste]] koostatud [http://kultuur.edu.ee/~tonuk/Sonadr.html "Arvuti-MIDI mini-sõnastik"]
* [http://www.midi.org/aboutmidi/glossary.php MIDI mõisted (inglise keeles)]
* [http://www.midi.org/aboutmidi/glossary.php MIDI mõisted (inglise keeles)]




{{Arvutisiinid}}
{{Arvutisiinid}}


[[Kategooria:MIDI| ]]
== Viited ==
* Huber David Miles. "The MIDI Manual". 2007
* "MIDI 1.0 Detailed Specification" 1995
* "Elementaarne MIDI" ([[Tõnu Kallaste]]; [[2002]], [[Viljandi Kultuurikolledž]]; ISBN 9985-78-547-9)
* Ajakirja "[[Keyboard]]" 2004nda aasta MIDI sünnile pühendatud number

[[Kategooria:Lühendid]]
[[Kategooria:Informaatika]]

Viimane redaktsioon: 8. veebruar 2023, kell 13:07

Noodi nimed ja MIDI noodi numbrid
C eri oktavites MIDI süsteemis

MIDI (akronüüm ingliskeelsest fraasist Musical Instrument Digital Interface, muusikainstrumendi digitaalne liides) on 1981. aastal loodud andmevahetusprotokoll, mis võimaldab elektroonilistel muusikainstrumentidel, arvutitel ja teistel seadmetel omavahel suhelda, üksteist juhtida ja sünkroonida.

Eelduseks on, et seadmetel on MIDI-liides, mistõttu nad toetavad MIDI standardit ja nende vahel on MIDI-ühendus (standardne MIDI-kaabel või näiteks USB-MIDI kasutajaliides) või WIDI-ühendus ("traadita" MIDI ehk Wireless MIDI). MIDI-ks nimetatakse ka kaabli või WIDI kaudu edastatavat MIDI teavet.

MIDI standard käsitleb digitaalsed käske – sündmuste teateid ja nende edastamist, mis hõlmab teavet näiteks tempo, helikõrguse, oktavi, helitugevuse, modulatsiooni, helipanoraamis paiknemise jne kohta.

MIDI on alates oma ilmumisest 1983. aastast saanud levinud standardiks muusikariistade (näiteks elektroonilised klahvpillid, kitarriprotsessorid, trummimasinad, sekventserid jne) juhtimisel ja sünkroonimisel.

MIDI lühiajalugu

[muuda | muuda lähteteksti]

Elektrooniliste muusikainstrumentide algusaastatel olid süntesaatorid tavaliselt monotoonsed seadmed. Piirangust, taasesitada üht nooti korraga, läksid elektrooniliste muusikainstrumentide tootjad mööda tehnoloogiaga, mis võimaldas luua elektrilise ühenduse erinevate süntesaatorite vahel. Üks süntesaator määrati ülemaks ja sellega võimaldati juhtida alluvate helimoodulite taasesitusparameetreid. Nimetatud ülem-alluv-süsteemi juhtimiseks töötati välja algeline juhtsignaal. Süsteem põhines varajaste süntesaatorite omadusel, kus nende mängimisel tekkiva alalispingega oli võimalik juhtida teise instrumendi pingega juhitud võnkumisi ja pingega juhitud võimendeid. Kuna mitmed sel ajal kasutusel olnud süntesaatorid genereerisid alalissignaali, mille pinge suurenes ühe voldi võrra okaatvi kohta, siis oli võimalik kasutada seda juhtpinget normpingena. See võimaldas edastada helikõrgust sisaldavat informatsiooni teistele süntesaatoritele. Nootide algushetke ja kestuse sünkroonimiseks kasutati väravsignaali, kuid kuna tootjad kasutasid oma elektroonilistes instrumentides erinevaid sünkroonimisimpulsside taktsagedusi, oli mitteühilduvate seadmete sünkroonimine keerukas ja nõudis lisaseadmeid. Digitaalelektroonika areng võimaldas otsida alternatiive analoogjuhtimisele, mistõttu alustasid David Smith ja Chet Wood digitaalset elektrooniliste instrumendi juhtreeglistiku arendamist. Väljatöötatav protokoll nimetati süntesaatori universaalliideseks ja 1981. aasta sügisel tutvustati juhtreeglistikku heliinsenerluse kogukonnale (AES). Kahe järgmise aasta jooksul tehti koostöös elektrooniliste instrumentide suurtootjatega protokolli standardis muudatusi ja 1983. aastal nimetati süntesaatori universaalliides ümber MIDI-ks.

Standardsed MIDI rakendused

[muuda | muuda lähteteksti]

MIDI võimaldab elektrooniliste instrumentide vahel suhtluse ja teeb võimalikuks ühel seadmel juhtida teist. Näiteks MIDI-instrumendil noodi mängimine genereerib digitaalsignaali, millega on võimalik mängida noot teisel elektroonilisel instrumendil. MIDI juhtimine võimaldab instrumente paigutada väiksematesse moodulitesse ja neid samaaegselt kasutada. Samuti on MIDIga võimalik instrumendi helisid programmeerida ja muuta helide signaalide kuju. Filtrite rakendamine võimaldab muuta helide tämbrit ning luua funktsioone, mis on suutelised filtrite parameetreid määratud aja jooksul muutma. Tarkvaraliste ja riistvaraliste muusikainstrumentide juhtnuppude ja parameetrite juhtimine on võimalik määrata MIDI kontrolleri füüsiliste lülitite alla. Kasutades muundureid, mis teisendavad MIDI signaale analoogjuhtsignaalideks, on võimalik MIDI-seadmetega juhtida ka analoogsüntesaatoreid.

MIDI-ga komponeerimine

[muuda | muuda lähteteksti]

Arvutitarkvara või spetsiaalsete riistvaraliste arvutite abil on võimalik heliloomingu ja -töötluse eesmärgil MIDI sündmusi järjestada, muuta ja luua. Nii saab modifitseerida MIDI arranžeeringu tempot, helistikku ja instrumente ilma, et ühtegi instrumenti peaks uuesti salvestama. MIDIt kasutatakse ka kõrgekvaliteediliste digitaalsete helisämplite juhtimiseks. Mitmetesse tarkvaralistesse helindusarvutitesse (DAW) on projekteeritud MIDI implementatsioonide funktsioon. Teiste funktsioonide seas saavad helindusarvutid graafiliselt esitada MIDI nootide andmeid ja neid töödelda. Muuta saab MIDI nootide vältust, helikõrgust ja helitugevust ning lisada modulatsiooniefekte, nootide libistamist ühelt helikõrguselt teisele.

Muid MIDI rakendusi

[muuda | muuda lähteteksti]

MIDI reeglistikku on rakendatud ka mittemuusikaliste süsteemide juhtimiseks. MIDI-t on kasutatud lavavalgustussüsteemide lülitamiseks, sünkroonimiseks ja automatiseerimiseks. Ettevõtte Apple tarkvara "Apple Motion" võimaldab MIDI-ga juhtida videotöötlusparameetreid. 1987. aastal kasutati MIDI protokolli arvutite omavahelisse võrku lülitamiseks, eesmärgiga mängida arvutimängu "Oxyd". Lisaks kasutatakse MIDI-t kodudes valgustuse ja kodumasinate juhtimiseks.

MIDI-instrumendid

[muuda | muuda lähteteksti]

MIDI-instrument sisaldab MIDI-teadete edastamiseks ja vastuvõtmiseks sisend- ja väljundpesasid, protsessorit sisend- ja väljundsignaalide töötlemiseks, kasutajaliidest, mis võimaldaks seadet programmeerida, heli tekitamiseks vajalikku elektrilist lülitust ja juhtsüsteemi. Tavaliselt salvestatakse MIDI-instrumendi helid ja operatsioonisüsteem instrumendi püsimällu. MIDI-instrumendiks võib olla ka klaverilaadsete klahvideta üksikmoodul.

MIDI-seadmestik

[muuda | muuda lähteteksti]
Diagram of a MIDI connector
MIDI pistikseadme kontakttihvtide paigutus

MIDI riistvaraline liides töötab asünkroonse jadaühendusena boodikiirusega 31,25 kbd (+/- 1%), kusjuures andmeedastuseks kasutatakse üht algusbitti, kaheksat andmebitti ja lõppbitti. Paarsusbitte MIDI andmevahetuse käigus ei saadeta. Kokku edastatakse 320 mikrosekundilise ajavahemiku vältel 10 bitti ühe jadamisi saadetud baidi kohta. Edastatavates baitides saadetakse vähima kaaluga bitt esimesena. Algusbitt on määratud loogilise nullina ja lõppbitt loogilise ühena. Maanduskontuuride ja andmevigade vältimiseks on saatja elektriline lülitus ja vastuvõtja elektriline lülitus teineteisest optoisolaatoriga eraldatud. Ahelas kasutatava optoisolaatori tõusuaeg ja langeaeg peab olema väiksem kui 2 mikrosekundit. Vastuvõtja elektriahel peab sisselülitamiseks tarbima vähem kui 5 mA voolu. Viie kontakttihvtiga 180-kraadine DIN-pesa. MIDI andmevahetuses ei kasutata ning sellest tulenevalt ei ühendata kontakttihvte 1 ja 3 saatja ning vastuvõtja elektriahelatesse. MIDI sisendpistikseadise kontakttihvt 2 jääb samuti ühendamata. MIDI-pesade ja pistikseadiste varjestusühendusi ei lülitata ühtegi MIDI riistvaraahelasse ega korpuse maandusse. MIDI peegelduspesa kasutamisel võib MIDI-sisendpesa ja peegelduspesa vahelises andmevahetuses esineda signaali degradeerumine nelinurksignaali tõusva ja langeva serva vahel. See on tingitud optoisolaatori reageerimiskestusest. Reageerimiskestusest tingitud ajastusvead seavad jadamisi MIDI ahelasse lülitatavate MIDI-seadmete arvule piirangu. MIDI-seadmete omavaheliseks ühendamiseks kasutatavate kaablite maksimaalne pikkus on, veatõrjekoodi puudumise tõttu, 15 meetrit. Kasutatavaks kaabliks on varjestatud keerdpaarkaabel, mille mõlemas otsas on viie kontakttihvtiga DIN-pistikseadis. Kaabli varjestus on ühendatud pistikseadiste teise kontakttihvtiga.

MIDI teatetüüpide diagramm
MIDI baiditüüpide diagramm

Jadasiinide spetsifikatsioone MIDI süsteemides

[muuda | muuda lähteteksti]

USB võimaldab süsteemi lisada kuni 127 välist seadet, mis on tinginud MIDI tööstuses tendentsi luua süsteeme, kus seadmete omavaheliseks ühendamiseks kasutatakse minimaalsel hulgal lisaühendusi. USB-ühendused võimaldavad lisaseadme ja arvuti vahel kahepoolse ühenduse, mis lihtsustab lõppkasutaja jaoks süsteemi kasutamist. Lõppkasutaja kasutajamugavuse suurendamiseks võimaldatakse ka USB-seadmete käigultvahetus. USB 1.0 ja USB 2.0 standardite seadmetevahelise ühenduskaabli maksimaalne pikkus on viis meetrit ning seadmeid, mille voolutarve on suurem kui 500 mA, tuleb elektrienergiaga varustada välise toiteseadme kaudu.

FireWire võimaldab kiudoptilisi kaableid kasutades edastada MIDI juhtimissignaale kuni saja meetri kaugusele. FireWire on suuteline MIDI süsteemi ühendama kuni 63 välist seadet ning, sarnaselt USB standardiga, kasutab kahepoolseks suhtluseks keerdpaarkaablit. FireWire-süsteemid toetavad käigultvahetust.

MIDI andmevorming

[muuda | muuda lähteteksti]

MIDI suhtlus saavutatakse mitmebaidiliste andmekogumitega, mis koosnevad ühest seisundibaidist, millele järgnevad üks või kaks andmebaiti. Tavaliselt ehitatakse MIDI instrumenti nii saatja kui ka vastuvõtja, kuid MIDI seade võib olla ka varustatud ainult ühega. Vastuvõtja teostab MIDI-käske ja võtab vastu MIDI andmevormingus teateid. Vastuvõtja riistvara koosneb optoisolaatorist, UART-seadmest ning muust kindla funktsiooni täitmiseks vajalikust riistvarast. MIDI andmevormingus informatsiooni edastamiseks kasutab MIDI saatja UART-seadet ja signaalivõimendit. MIDI-teateid võib edastada kuni üle 16 kanali ja teade koosneb ühest või enamast baidist.

Teatetüübid

[muuda | muuda lähteteksti]

MIDI teated jaotatakse kahte põhikategooriasse: kanaliteated ja süsteemiteated.

Kanaliteated

[muuda | muuda lähteteksti]

Kanaliteade kasutab teate edastamiseks ühele kanalile seisundibaidist nelja bitti ning järelejäänud nelja bitti kasutatakse teate defineerimiseks. Seega on kanaliteated mõeldud vastuvõtjatele, mille kanalinumber on kodeeritud kanaliteate seisundibaiti. MIDI teateid on võimalik edastada rohkem kui ühele kanalile korraga. Kanalit, millele edastatakse põhikäsud, nagu näiteks millisel programminumbril olla ning millist töörežiimi kasutada, nimetatakse kanali baaskanaliks. MIDI seadet on võimalik seadistada mitmel kanalil informatsiooni vastuvõtmiseks. Selliseid kanaleid nimetatakse häälkanaliteks. Eristatakse kaht tüüpi kanaliteateid: häälteated ja töörežiimiteated. Häälteateid kasutatakse MIDI instrumendi häälte juhtimiseks ning neid edastatakse üle häälkanalite. Töörežiimiteateid kasutatakse, et defineerida MIDI instrumendi reageerimine häälteatele. Töörežiimiteated edastatakse baaskanali kaudu.

Süsteemiteated

[muuda | muuda lähteteksti]

Süsteemiteated ei sisalda kanalinumbreid. Kokku on võimalik eristada kolme tüüpi süsteemiteateid: ühisteated on, olenemata kanalist, adresseeritud kõigile vastuvõtjatele. Reaalajateateid kasutatakse sünkroonimiseks ning on mõeldud kõigile taktipõhistele süsteemiosadele. Reaalajateated edastavad ainult seisundibitte. Reaalajateateid on võimalik saata igal ajal, ka erineva staatusega teate baitide vahel. Sel juhul reaalajateatele reageeritakse või seda ignoreeritakse, seejärel jätkub viimane vastuvõtmisprotsess. Süsteemi eksklusiivteated võivad sisaldada suvalise arvu andmebaite ning teadete edastamine lõpetatakse eksklusiivteate lõppbaidi (EOX) või suvalise teise seisundibaidiga. Lõppbait tuleks alati edastada süsteemi eksklusiivteate lõpus. Teated sisaldavad tootja identifitseerimiskoodi. Kui vastuvõtja ei tunne identifitseerimiskoodi, tuleks koodile järgnevaid andmeid ignoreerida. MIDI-seadmete tootjatel on kohustus avalikustada identifitseerimiskoodile järgnev teadete andmevorming. See võimaldab kasutajatel ja arendajatel tootjate MIDI-seadmetele ligi pääseda.

Andmetüübid

[muuda | muuda lähteteksti]

MIDI edastab kaht tüüpi baite: seisundibaite ja andmebaite.

Seisundibaidid

[muuda | muuda lähteteksti]

Seisundibaidid on kaheksabitised kahendsüsteemi numbrid, milles suurima kaaluga bitt on määratud loogilise ühena. Seisundibaitide ülesanne on määrata teate tüüp, ehk seisundibaidile järgnevate andmebaitide ülesanne. Uued seisundibaidid (v.a reaalajateated) määravad vastuvõtja seisundi ka juhul, kui viimase teate käsud jäid täitmata.

Seisundi säilitamine

[muuda | muuda lähteteksti]

Kehtib häälteadete ja töörežiimiteadete puhul. Seisundibaidi vastuvõtmisel ja tema käsu täitmisel jääb vastuvõtja seisundibaidi edastatud seisundisse seni, kuni vastu võetakse teistsugune seisundibait. Seetõttu on võimalik korduva seisundibaidi edastamise puhul korduvate baitide saatmine ära jätta ning edastada ainult andmebaite. Järelikult on seisundi säilitamise korral võimalik edastada teateid, mis koosnevad ainult andmebaitidest. Seisundi säilitamise lõpetab suvalise teistsuguse seisundibaidi edastamine. Reaalajateated ei tohi seisundi säilitamist mõjutada. Kõiki vastuvõetud seisundibaite ja nendele järgnevad andmebaite, mille ülesannet vastuvõtjas ei täideta, ignoreeritakse.

Määratlemata seisund

[muuda | muuda lähteteksti]

MIDI seadmed ei tohi edastada määratlemata seisundiga baite. MIDI süsteemis häirete vältimiseks tuleb määratlemata seisundiga baite ignoreerida. MIDI seadme käivitamisel ning väljalülitamisel ei tohi MIDI seade väljundpesast mürasignaale edastada, kuna see võib põhjustada andmevigu või andmete valest alguskohast lugemist.

Andmebaidid

[muuda | muuda lähteteksti]

Andmebaidid (v.a reaalajateated) edastatakse pärast seisundibaiti. Teate sisu kannavad üks või kaks kaheksabitilist andmebaiti, mille suurima kaaluga bitt on alati määratud loogilise nullina. Iga seisundibaidi kohta tuleb edastada õige arv andmebaite. Vastuvõtjad peavad enne teate täitmist ootama, kuni kõik andmebaidid on vastu võetud. Andmebaite, millele ei eelnenud valiidne seisundibait, tuleks ignoreerida juhul, kui tegemist ei ole seisundi säilitamisega.

Välislingid

[muuda | muuda lähteteksti]