.

Подстандарты GM, GS и XG

Практически все современные электронные музыкальные инструменты (в том числе и звуковые карты) имеют управление по MIDI. Подробно об этом цифровом интерфейсе уже неоднократно писалось и в печатных изданиях и в электронных ресурсах. Тем не менее, обычно рассматривается лишь один из существующих стандартов - General MIDI (GM), в то время как уже довольно давно существуют два расширения этой спецификации: GS, предложенный фирмой {Roland} и XG от фирмы {Yamaha}. Кроме того, начинает продвигаться новый общий стандарт GM2, предложенный в 1999 году {MMA} (MIDI Manufacturers Association).

General MIDI (GM)   Первый общий стандарт был предложен в 1991 году ассоциацией производителей MIDI-оборудования. Он объединил изделия разношерстных производителей под именем General MIDI (System) Level 1. Сейчас его поддерживает абсолютное большинство моделей электронных синтезаторов, звуковых карт и клавиатур. Так как требования этого стандарта уже давно морально устарели, то, обычно, современные электронные инструменты поддерживают его лишь для базовой совместимости.
GM-файлы звучат на различных моделях существенно по разному. Дело в том, что определяя количество и состав мелодических инструментов не были точно описаны тембровые характеристики GM-инструментов. Поэтому, если для легкой музыки с традиционным составом оркестра звучание более-менее схоже, то, если задействуются инструменты из таких групп, как Synth Pad, Sound Effects и некоторых других, конечный результат может быть обескураживающим.
General MIDI 2 (GM2)  В 1999 году MMA наконец "родила" расширение GM, получившее наименование General MIDI Level 2 (GM2). В новом стандарте расширили полифонию и палитру доступных инструментов до 256, добавили ряд новых контроллеров. В GM2 прослеживается влияние стандартов Роланда и Ямахи. Несмотря на соглашение между этими фирмами General MIDI Level 2 пока не получил широкого распространения.

GS и XG   Два похожих друг на друга стандарта предложили фирмы Roland и Yamaha. GS начал развиваться в 1991 году сразу за GM и в последующем неоднократно расширялся в связи с выпуском новых продвинутых моделей. XG от Ямахи начал активно продвигаться в 1996 году и при его разработке видимо были учтены наработки Роланда. Спецификация XG отличается огромным количеством настроек эффект-процессора.

 GS - General Synth - стандаpт на набоp тембpов фиpмы Roland. Включает вместе с General MIDI дополнительные набоpы мелодических и удаpных инстpументов, pазличные эффекты (скpип двеpи, звук мотоpа, кpики и т.п.), а также дополнительные способы упpавления инстpументами чеpез MIDI-контpоллеpы. Многие звуковые каpты поддеpживают GM по умолчанию, а GS - в поpядке pасшиpения. 

XG - Extended General - новый стандаpт, включающий несколько сотен мелодических и удаpных инстpументов, пpименяемых в пpофессиональной музыке. Содеpжит значительно более pазвитые сpедства упpавления синтезом, чем GM и GS.

Несколько мифов  Довольно часто можно слышать о "плохом качестве MIDI-музыки". MIDI-файл - не музыка, это набор команд по управлению электронными музыкальными инструментами и ничего более. Вспомним классический духовой орган. Здесь исполнитель посредством сложнейшей механики управляет подачей воздуха в комбинации звучащих труб. MIDI - электронный аналог такой механики. Это инструмент, при помощи которого исполнитель реализует свои замыслы. Поэтому, совершенно бессмысленно говорить о качестве MIDI, имеет место лишь разговор о возможностях управления, предоставляемого этим цифровым интерфейсом.  "XG лучше звучит чем GM". Да, спецификация XG предоставляет больше документированных возможностей по управлению синтезом звука, но это не значит, что электронные инструменты от Ямахи лучше других GM совместимых устройств. У XG есть преимущество в однообразии звука и управления различными моделями устройств, от самых дешевых (звуковушки серии 7xx за $10-20) до самых дорогих (MU128), но к качеству самого звука это отношения почти не имеет.
"GM и его последующие дополнения единственно возможные способы управления электронными инструментами". MIDI, вообще-то, проектировался с расчетом на разработчиков и программистов электронных инструментов, но не для самих музыкантов. У клавишных синтезаторов и большинства внешних модулей премудрости управления для исполнителя реализованы через удобный внешний интерфейс, а MIDI скрыто внутренней реализацией и проявляется на этапе записи (чтения) в секвенсор внешнего устройства, которым сейчас обычно является компьютер. Поэтому, используя качественный клавишный синтезатор можно вполне обходиться без знания удручающих шестнадцатеричных кодов MIDI-сообщений. Для звуковых карт, к сожалению, точное знание спецификации MIDI изначально была и есть необходимость. Отсутствие физических органов управления (ручек, слайдеров и т.п.) принуждает изучать их моделирование с помощью MIDI-контроллеров и Sysex-сообщений. Рисованные софтовые синтезаторы здесь помогают, но не заменяют знания внутренностей MIDI. Тем не менее, возможно создание удобной для пользователя надстройки или даже замены формата MIDI-сообщений. К сожалению, пока за это никто не берется.

Каждый "приличный" MIDI-файл содержит короткое Sysex-сообщение, инициализирующее MIDI устройство. По виду этого сообщения можно определить, какая спецификация должна использоваться для проигрывания файла.

  • GM GM System On F0 7E 7F 09 01 F7
  • GS GS Reset F0 41 10 42 12 40 00 7F 00 41 F7
  • XG XG System On F0 43 10 4C 00 00 7E 00 F7
  • GM2 GM2 System On F0 7E 7F 09 03 F7

Для GS и XG возможны различные значения параметров в зависимости от конкретной реализации MIDI-устройства, например, количество доступных каналов может достигать 32, количество инструментов у старших моделей - свыше тысячи. Интерпретация функций контроллеров выбора банка MSB и LSB в стандартах GS и XG различна. По контроллеру с номером 0 (Выбор банка по MSB) в GS можно выбрать одну из вариаций основного GM-инструмента, а в XG это выбор дополнительного, часто нестандартного банка инструментов (здесь обычно располагаются инструменты PLG, дополнительные наборы ударных и т.д.). По контроллеру 32 (Выбор банка по LSB) в GS можно выбрать один из основных моделей GS тон-генератора (SC-55, SC-88, SC-88Pro, SC-8820).  Выбор конкретной модели обусловлен тем, что разные версии инструментов от Роланда могут звучать немного по разному (например Grand Piano SC-55 заметно отличается от Grand Piano SC-8820). В XG по контроллеру 32 выбирается дополнительные вариации основных GM-инструментов. А в остальном, современный GS отличается от XG только наличием управления вибрато, которое в XG вынесено в NRPN и реакцией на контроллер 75, управляющий временем спада (decay) после фазы атаки звука.
GM2 не предусматривает управление по NRPN (на то и название!). В XG, в отличие от GS, добавили тонкие, но вполне востребованные настройки для ударных инструментов. Как уже говорилось выше, XG отличается массой настроек эффект-процессора, но последние GS модели (8820, 8850) довольно близко подошли к спецификации от Ямахи. Спецификация GM давно устарела. Все современные модели звукосинтезирующих устройств, носящие логотип GM, так или иначе её превосходят, особенно в части управления эффектами. Спецификация GM2 зафиксировала существующее положение дел и вполне может использоваться при проектировании недорогих SamplePlayBack-устройств. GS и XG по управлению довольно близки друг к другу, но состав инструментов у них существенно различен, что мешает переносимости GS и XG MIDI-файлов. Только несколько моделей от Корга (!) совмещают в себе стандарты GS и XG (N1, 5, 5ex).
Спецификации MIDI прямо не влияют на качество звука. Нужно только учитывать, что и GS, и XG имеют общность управления и тембров для разного спектра моделей, от дешевых до дорогих. Это позволяет, начав работу (развлечение) с малого, затем перейти на более стоящие вещи, не растеряв багаж своих наработок.