Ексклузивно Съобщение за Системата в MIDI

Едно събитие в MIDI, което носи ексклузивното съобщение за системата, носи информация, която е специфична за един от производителите на устройства MIDI. Действието, което това съобщение поражда, може да е каквото и да е.

Устройствата на един производител, като например Lexicon, могат да получат едно съобщение, което се разбира само от устройствата Lexicon и което ще бъде пренебрегнато от други устройства.

Това съобщение принадлежи на категорията от обикновени съобщения за системата в MIDI.

Ексклузивните съобщения за системата в MIDI могат да съдържат практически неограничен брой байтове от данни. Първият байт е статусния байт и има шестнадесетичната стойност 0xF0. Вторият байт е идентификацията на производителя. Различните производители на устройства MIDI имат различни идентификационни байтове и тези байтове се използват от устройствата, за да разпознаят кое ексклузивно съобщение за системата трябва да се вземе предвид (ако съобщението е от техния производител) и кое трябва да се пренебрегне (ако е от друг производител). Списъкът от идентификационни байтове е по-долу. Няколко (неограничен брой) байтове следват идентификационния байт на производителя. Единственото общо нещо в тези байтове е, че най-горният бит на всеки от тези байтове е 0 и следователно тези байтове могат да носят стойности само между 0x00 и 0x7F (десетични стойности между 0 и 127). Последният байт на съобщението е 0xF7 и показва, че това е краят на съобщението. Когато устройството срещне този байт, устройството разбира, че това е краят на съобщението даже и при съобщения, които са от други производители и които устройството не разбира.

Следното е пример на едно "ексклузивно съобщение за системата" в MIDI.

0xF0 0x41 0x01 0x34 0xF7

Статусният байт 0xF0 показва, че това е ексклузивно съобщение за системата. Идентификационният байт на производителя е 0x41, което показва, че това е ексклузивно съобщение за системата на Roland. Данните на това съобщение са 0x01 0x34, което кара устройствата на Roland да направят нещо (това е само пример и едно такова съобщение на Roland най-вероятно не съществува). Байтът 0xF7 показва, че съобщението свършва.

Забележете, че след като всички байтове в съобщението след идентификацията на производителя и преди 0xF7 трябва да имат най-горен бит равен на 0, ако един статусен байт, който и да е, се появи след идентификацията на производителя, ще се счита от устройствата, които не разбират съобщението, като край на съобщението (тъй като статусните байтове имат най-горен бит равен на 1).

Следното е списък с идентификационни байтове за производителите.

Шестнадесетична стойност Десетична стойност Производител
0x01 1 Sequential Circuits
0x02 2 Big Briar
0x03 3 Octave / Plateau
0x04 4 Moog
0x05 5 Passport Designs
0x06 6 Lexicon
0x07 7 Kurzweil
0x08 8 Fender
0x09 9 Gulbransen
0x0A 10 Delta Labs
0x0B 11 Sound Comp.
0x0C 12 General Electro
0x0D 13 Techmar
0x0E 14 Matthews Research
0x10 16 Oberheim
0x11 17 PAIA
0x12 18 Simmons
0x13 19 Gentle Electric
0x14 20 Fairlight
0x15 21 JL Cooper
0x16 22 Lowery
0x17 23 Lin
0x18 24 Emu
0x1B 27 Peavey
0x20 32 Bon Tempi
0x21 33 S.I.E.L.
0x23 35 SyntheAxe
0x24 36 Hohner
0x25 37 Crumar
0x26 38 Solton
0x27 39 Jellinghous Ms
0x28 40 CTS
0x29 41 PPG
0x2F 47 Elka
0x40 64 Kawai
0x41 65 Roland
0x42 66 Korg
0x43 67 Yamaha
0x44 68 Casio
0x45 69 Akai

Един производител може да получи идентификационен байт от Интернационалната MIDI Организация (International MIDI Association). Ако производителите нямат идентификационен байт, те имат два начина да създадат свои собствени ексклузивни съобщения за системата. Първо, те могат да използват идентификационния байт, които е запазен за образователни и изследователски цели. Този идентификационен байт обаче не би трябвало да се използва с цел бизнес. Този байт е 0x7D. Второ, те могат да използват идентификационния байт на който и да е друг производител, стига да не променят структурата на съобщението на другия производител.

Универсални ексклузивни съобщения за системата

В протокола MIDI има два идентификационни байтове, които могат да се използват в ексклузивни съобщения за системата вместо специфичните идентификационни байтове в таблицата по-горе. Тъй като тези два идентификационни байтове не са специфични за един производител, а универсални, всяко устройство MIDI трябва да се съобрази със съответното съобщение. Тези байтове са следните.

Шестнадесетична стойност Десетична стойност Описание
0x7E 126 В реално време
0x7F 127 Не в реално време

С други думи, 0x7F се носи от ексклузивни съобщения за системата, на които всички устройства MIDI трябва да реагират в реално време (веднага), а 0x7E се носи от ексклузивните съобщения за системата, на които всички устройства MIDI трябва да реагират, но не в реално време (не непременно веднага). Съобщението пълен кадър например е едно ексклузивно съобщение за системата с идентификационен байт равен на 0x7F. Това съобщение кара всички устройства MIDI да се подредят – веднага – към някаква позиция в песента.

Първият байт след идентификацията за реално / не реално време се нарича "канал на ексклузивното съобщение за системата". Обикновените ексклузивни съобщения за системата нямат канал, но универсалните такива съобщения имат канал, който може да е между 0x00 и 0x7F (между 0 и 127). Обикновено, този канал всъщност е идентификацията на производителя от таблицата по-горе (т.е., 0x41 за Roland), така, че тези съобщения да могат да се изпращат на специфични устройства MIDI. Ако обаче канала на ексклузивното съобщение за системата е 0x7F, тогава това съобщение е за всички устройства MIDI.

Двата байта след канала на ексклузивното съобщение за системата са суб-идентификациите и определят какво прави съобщението. Ако двата байта са например "0x01 0x01", тогава съобщение е съобщението пълен кадър в MIDI и останалите данни в това съобщение ще показват към кое време в песента устройството MIDI трябва да се подреди.

Примери за универсални ексклузивни съобщения за системата в MIDI включват съобщението главна сила на звука в MIDI, съобщението пълен кадър в MIDI и съобщението позволи / спри протокола General MIDI.

Виж също:
Протокол Musical Instrument Digital Interface (MIDI)

Добави нов коментар

Filtered HTML

  • Freelinking helps you easily create HTML links. Links take the form of [[indicator:target|Title]]. By default (no indicator): Click to view a local node.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.