Съобщение Контрола за Глобални Параметри в MIDI

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

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

Съобщението контрола за глобални параметри в MIDI по същество носи две парчета информация: пътя към обекта (пътя към слота), чийто параметър трябва да се промени и двойки от идентификации за параметрите и стойностите на тези параметри. Пътеката към слота, параметрите и стойностите са всички с променлива дължина. Пътеката към слота се носи от двойки от стойности, като най-значителният байт е първи. Идентификациите за параметрите могат да се от един или повече байтове, като най-значителният байт е първи. Стойностите са от един или повече байтове, като най-незначителният байт е първи.

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

0xF0 0x7F 0xid 0x04 0x05 0xsw 0xpw 0xvw SP PP VV PP VV … 0xF7

0xF0 казва на устройството MIDI, че това е едно ексклузивно съобщение за системата. 0x7F показва, че това е универсално ексклузивно съобщение за системата в реално време. 0xid е идентификацията на устройството (ако този байт също е 0x7F, съобщението ще бъде изпратено към всички устройства). 0x04 е първата под идентификация на съобщението и в този случай показва, че това е съобщение за контрол над устройството. 0x05 е втората под идентификация на съобщението и тук показва, че това е съобщението контрола за глобални параметри. 0xsw е дължината на пътеката към слота, в брой на двойки от байтове. 0xpw е дължината на идентификациите за параметрите, в брой байтове. 0xvw е дължината на стойностите на параметрите, в брой байтове. SP е поредицата с променлива дължина от байтове за пътеката към слота. Има формата 0xsm 0xsl 0xsm 0xsl …, където 0xsm и 0xsl са най-значителните и най-незначителните байтове в двойките от байтове. PP е поредицата от байтове, които определят параметъра. VV е поредицата от байтове, които определят стойността за параметъра. Няма ограничение на колко двойки PP VV могат да бъдат изпратени. 0xF7 е края на ексклузивното съобщение за системата.

Съобщенията, в които 0xsw е 0x01 и най-значителният байт на пътеката към слота SP също е 0x01, са съобщения резервирани за General MIDI 2.

Знае се, че не всички контроли, които се съдържат в това съобщение, могат да са в реално време, въпреки че това е едно универсално ексклузивно съобщение за системата в реално време. Промените, които не могат да се изпълнят в реално време, трябва да се изпращат, когато няма да произведат доловима промяна в аудиото, като например в началото на музикалните парчета или по време на тихи части.

Пример на съобщението контрола за глобални параметри в MIDI

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

0xF0 0x7F 0x7F 0x04 0x05 0x01 0x01 0x01 0x01 0x01 0x00 0x04 0xF7

0xF0 0x7F 0x7F показва, че това е едно универсално ексклузивно съобщение за системата в реално време, изпратено към всички устройства. 0x04 показва, че това е съобщение за контрола над устройството. 0x05 показва, че това е съобщението контрола за глобални параметри. 0x01 е дължината на пътеката към слота (пътеката се състои от 1 байт). 0x01 е дължината на идентификациите за параметрите (1 байт за всяка идентификация). 0x01 показва, че дължината за стойностите също е 1 байт. 0x01 0x01 е пътеката към слота 0x0101 (с най-значителния байт първи) и показва, че това е ефекта ривърб. 0x00 е параметъра на ривърба, който трябва да се промени, в този случай, вида на ривърба. 0x04 е стойността на вида на ривърба, в този случай, голяма зала. 0xF7 е края на съобщението. Това съобщение казва на устройството, че ривърба трябва да е голяма зала.

Препоръчана практика за съобщението контрола за глобални параметри в MIDI

В препоръчаната практика, пътеката към слота за ривърба е 0x0101. Пътеката към слота за хора е 0x0102. И съобщенията с параметри за ривърба, и съобщенията с параметри за хора не се третират като съобщения в реално време и трябва да се изпращат или в началото на песента, или по време на тихи части.

При ривърба:

  • Идентификацията на параметъра 0x00 е вида на ривърба. Възможни стойности са 0x00 ("малка стая", дължина на реверберацията от около 5 милисекунди (ms)), 0x01 ("средна стая", около 10 ms), 0x02 ("голяма стая"), 0x03 ("средна зала"), 0x04 ("голяма зала"), 0x08 ("реверберация с пластина"). Няма препоръки за самия алгоритъм за осъществяване и неговите акустични характеристики, а само общи препоръки за дължината на реверберацията (виж също по-долу). 0x04 е препоръчаната предопределена стойност.
  • Идентификацията на параметъра 0x01 е времето на ривърба (времето, за което оригиналния сигнал затихва с -60 dB). Стойността е VV = ln(време на ривърба в секунди) / 0.025 + 40. Следното са препоръчаните предопределени настройки за различните видове.
Вид Време на ривърба (секунди) Стойност
0 1.1 0x2B (десетично 44)
1 1.3 0x32 (десетично 50)
2 1.5 0x38 (десетично 56)
3 1.8 0x40 (десетично 64)
4 1.8 0x40 (десетично 64)
8 1.3 0x32 (десетично 50)

При хора:

  • Идентификацията на параметъра 0x00 е вида на хора. Следното са възможни стойности и съответни предопределени настройки. Предопределената стойност е 0x02.
Стойност Име Обратна връзка Скорост на модулацията Дълбочина на модулацията Изпращане към ривърба
0x00 Хор 1 0 (0%) 3 (0.4 Hz) 5 (1.9 ms) 0 (0%)
0x01 Хор 2 5 (4%) 9 (1.1 Hz) 19 (6.3 ms) 0 (0%)
0x02 Хор 3 8 (6%) 3 (0.4 Hz) 19 (6.3 ms) 0 (0%)
0x03 Хор 4 16 (12%) 9 (1.1 Hz) 16 (5.3 ms) 0 (0%)
0x04 FB хор 64 (49%) 2 (0.2 Hz) 24 (7.8 ms) 0 (0%)
0x05 Фленджър 112 (86%) 1 (0.1 Hz) 5 (1.9 ms) 0 (0%)
  • Идентификацията на параметъра 0x01 е скоростта на модулация на хора. Скоростта в Hz е V * 0.122, където V е стойността.
  • Идентификацията на параметъра 0x02 е дълбочината на модулацията на хора. Дълбочината в милисекунди е (V + 1) / 3.2, където V е стойността.
  • Идентификацията на параметъра 0x03 е обратната връзка на хора. Обратната връзка в проценти е V * 0.763, където V е стойността.
  • Идентификацията на параметъра 0x04 е нивото на сигнала изпратен към ривърба от хора. Нивото в проценти е V * 0.787, където V е стойността.

Виж също:
Протокол 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.