603202
174
Zoom out
Zoom in
Vorherige Seite
1/183
Nächste Seite
174
MIDI Implementatie
Voorbeelden van werkelijke MIDI berichten
<Voorbeeld1> 92 3E 5F
9n is de Note-on status, en n is het MIDI kanaal nummer. Omdat 2H = 2, 3EH = 62, en 5FH
= 95, is dit een Note-on bericht met MIDI CH (kanaal) = 3, nootnummer 62 (nootnaam is
D4), en velocity 95.
<Voorbeeld2> CE 49
CnH is de Program Change status, en n is het MIDI kanaal nummer. Omdat EH = 14, en
49H = 73, is dit een Program Change bericht met MIDI CH = 15, programmanummer 74.
<Voorbeeld3> EA 00 28
EnH is de Pitch Bend Change status, en n is het MIDI kanaal nummer. De 2
de
byte (00H = 0)
is de LSB, en de 3
de
byte (28H = 40) is de MSB, maar Pitch Bend Waarde is een door een
teken aangeduid nummer, waarin 40 00H (= 64 x 12 + 80 = 8192) 0 is, dus deze Pitch Bend
Waarde is 28 00H 40 00H = 40 x 12 + 80 (64 x 12 + 80) = 5120 8192 = -3072.
Als de Pitch Bend Sensitivity (gevoeligheid) op 2 halve tonen wordt ingesteld, zal -8192 (00
00H) maken dat de toonhoogte 200 cent zal veranderen, dus in dit geval wordt 200 x (-
3072) (-8192) = -75 cent Pitch Bend op MIDI kanaal 11 toegepast.
<Voorbeeld4> B3 64 00 65 00 06 0C 26 00 64 7F 65 7F
BnH is de Control Change status, en n is het MIDI kanaal nummer. Voor Control Changes is
de 2
de
byte het control nummer, en de 3
de
byte is de waarde. In een geval waarbij twee of
meerdere opeenvolgende berichten dezelfde status hebben, heeft MIDI een voorziening
genaamd 'running status', die het mogelijk maakt dat de status byte van het tweede, en de
daaropvolgende berichten, weggelaten wordt. Zodoende hebben de bovenstaande
berichten de volgende betekenis:
B3 64 00 MIDI kan. 4, laagste byte van RPN parameternummer: 00H
(B3) 65 00 (MIDI kan. 4) hoogste byte van RPN parameternummer: 00H
(B3) 06 0C (MIDI kan. 4) hoogste byte van parameterwaarde: 0CH
(B3) 26 00 (MIDI kan. 4) laagste byte van parameterwaarde: 00H
(B3) 64 7F (MIDI kan. 4) laagste byte van RPN parameternummer: 7FH
(B3) 65 7F (MIDI kan. 4) hoogste byte van RPN parameternummer: 7FH
Met andere woorden, de bovenstaande berichten specificeren een waarde van 0C 00H voor
RPN parameternummer 00 00H op MIDI kanaal 4, en stellen dan het RPN
parameternummer op 7F 7FH in.
RPN parameternummer 00 00H is Pitch Bend Sensitivity, en de MSB van de waarde geeft
eenheden van halve tonen aan, dus een waarde van 0CH = 12 stelt de maximale pitch bend
reeks op +/- 12 halve tonen (1 octaaf) in. (Op GS geluidsgeneratoren wordt de LSB van
Pitch Bend Sensitivity genegeerd, maar de LSB zou toch verzonden moeten worden (met
een waarde van 0), zodat de operatie op een ander apparaat correct zal zijn.)
Als de parameter voor RPN of NRPN eenmaal gespecificeerd is, zullen alle Data Entry
berichten die op datzelfde kanaal verzonden worden, geldig zijn, dus nadat de gewenste
waarde verzonden is, is het een goed idee om het parameternummer op 7F 7FH in te stellen,
om ongelukken te voorkomen. Dit is waarom de (B3) 64 7F (B3) 65 7F aan het eind staat.
Voor uitvoeringsdata (zoals Standaard MIDI File data), is het niet gewenst dat deze in
werkende status veel events bevat (zoals bij <Voorbeeld4>.) Reden hiervoor: als het
afspelen tijdens de song stopgezet wordt, en dan terug- of vooruit gespoeld wordt, de
sequencer mogelijk de correcte status kan verzenden, en de geluidsgenerator de data
verkeerd zal interpreteren. Zorg dat elk event zijn eigen status heeft.
Het is tevens noodzakelijk dat het instellen van het RPN of NRPN parameternummer, en de
waarde, in de juiste volgorde wordt gedaan. Op sommige sequencers kunnen events die op
dezelfde (of opeenvolgende) klok gebeuren, in een andere volgorde verzonden worden dan
waarin ze ontvangen werden. Daarom is het een goed idee om de tijd van elk event
enigszins te laten hellen (ongeveer 1 tick voor TPQN = 96, en ongeveer 5 ticks voor TPQN =
480.)
* TPQN: ticks per kwartnoot
Voorbeeld van een Exclusive bericht, en
berekening van een checksum
Roland Exclusive berichten (RQ1, DT1) worden met een checksum aan het eind (voor F7)
verzonden, om er voor te zorgen dat het bericht correct ontvangen wordt. De waarde van
de checksum wordt bepaald door het adres en data (of grootte) van het verzonden
Exclusive bericht.
Hoe de checksum berekend wordt
(Hexidecimale cijfers worden met 'H' aangegeven.)
De checksum is een waarde die voortkomt uit toevoeging van het adres, de grootte, en de
checksum zelf, en omkering van de lage 7 bits.
Hier is een voorbeeld van de manier waarop de checksum wordt berekend. We gaan er van
uit dat het adres in het Exclusive bericht dat we verzenden aa bb cc dd H is, en de data of
grootte is ee ff H.
Aa + bb + cc + dd + ee + ff = som
Som 128 = quotiënt overblijfsel
128 overblijfsel = ckecksum
<Voorbeeld1> CHORUS TYPE of PERFORMANCE COMMON op DELAY (DT1) instellen
Volgens de 'Parameter Address Map' (p.162) is het Start Adres van Temporary Performance
10 00 00 00H, het begin adres van CHORUS bij PERFORMANCE COMMON is 04 00H, en
het adres van CHORUS TYPE is 00 00H. Daarom is het adres van CHORUS TYPE van
PERFORMANCE COMMON:
10 00 00 00H
04 00H
+) 00 00H
10 00 04 00H
DELAY heeft de waarde 02H.
Dus het system exclusive bericht dat verzonden moet worden is:
F0 41 10 00 10 12 10 00 04 00 02 ?? F7
(1) (2) (3) (4) (5) address data checksum (6)
(1) Exclusive Status (2) ID (Roland) (3) Device ID (17)
(4) Model ID (XV-5050) (5) Command ID (DT1) (6) End of Exclusive
Bereken dan de checksum.
10H + 00H + 04H + 00H + 02H = 16 + 0 + 4 + 0 + 2 = 22 (sum)
22 (som) 128 = 0 (quotiënt) ... 22 (overblijfsel)
checksum = 128 - 22 (overblijfsel) = 106 = 6AH
Dit betekent dat F0 41 10 00 10 12 10 00 04 00 02 6A F7 het bericht is dat verzonden moet
worden.
<Voorbeeld2> De data (RQ1) van Performance Part 3 in USER:03 verkrijgen.
Volgens de 'Parameter Address Map' (p.162) is het start adres van USER:03 20 02 00 00H, en
het beginadres van Performance Part 3 is 00 22 00H.
Daarom is het start adres van Performance Part 3 in USER:03:
20 02 00 00H
+) 00 22 00H
20 02 22 00H
Als de grootte van een Performance Part 00 00 00 31H is, zou dit het te verzenden system
exclusive bericht zijn:
F0 41 10 00 10 11 20 02 22 00 00 00 00 31 ?? F7
(1) (2) (3) (4) (5) address data checksum (6)
(1) Exclusive Status (2) ID (Roland) (3) Device ID (17)
(4) Model ID (XV-5050) (5) Command ID (RQ1) (6) End of Exclusive
Bereken dan de checksum.
20H + 02H + 22H + 00H + 00H + 00H + 00H + 31H = 32 + 2 + 34 + 0 + 0 + 0 + 0 + 49
= 117 (sum)
117 (som) 128 = 0 (quotiënt) ... 117 (overblijfsel)
checksum = 128 - 117 (overblijfsel) = 11 = 0BH
Dit betekent dat F0 41 10 00 10 11 20 02 22 00 00 00 00 31 0B F7 het bericht is dat verzonden
moet worden.
174

Brauchen Sie Hilfe? Stellen Sie Ihre Frage.

Forenregeln

Missbrauch melden von Frage und/oder Antwort

Libble nimmt den Missbrauch seiner Dienste sehr ernst. Wir setzen uns dafür ein, derartige Missbrauchsfälle gemäß den Gesetzen Ihres Heimatlandes zu behandeln. Wenn Sie eine Meldung übermitteln, überprüfen wir Ihre Informationen und ergreifen entsprechende Maßnahmen. Wir melden uns nur dann wieder bei Ihnen, wenn wir weitere Einzelheiten wissen müssen oder weitere Informationen für Sie haben.

Art des Missbrauchs:

Zum Beispiel antisemitische Inhalte, rassistische Inhalte oder Material, das zu einer Gewalttat führen könnte.

Beispielsweise eine Kreditkartennummer, persönliche Identifikationsnummer oder unveröffentlichte Privatadresse. Beachten Sie, dass E-Mail-Adressen und der vollständige Name nicht als private Informationen angesehen werden.

Forenregeln

Um zu sinnvolle Fragen zu kommen halten Sie sich bitte an folgende Spielregeln:

Neu registrieren

Registrieren auf E - Mails für Roland XV5050 wenn:


Sie erhalten eine E-Mail, um sich für eine oder beide Optionen anzumelden.


Andere Handbücher von Roland XV5050

Roland XV5050 Bedienungsanleitung - Englisch - 184 seiten


Das Handbuch wird per E-Mail gesendet. Überprüfen Sie ihre E-Mail.

Wenn Sie innerhalb von 15 Minuten keine E-Mail mit dem Handbuch erhalten haben, kann es sein, dass Sie eine falsche E-Mail-Adresse eingegeben haben oder dass Ihr ISP eine maximale Größe eingestellt hat, um E-Mails zu erhalten, die kleiner als die Größe des Handbuchs sind.

Ihre Frage wurde zu diesem Forum hinzugefügt

Möchten Sie eine E-Mail erhalten, wenn neue Antworten und Fragen veröffentlicht werden? Geben Sie bitte Ihre Email-Adresse ein.



Info