faqs.org.ru

 Главная > Компьютеры и комплектующие > Мультимедиа >

Описание интерфейса MIDI

Секция 2 из 2 - Предыдущая - Следующая

RPN 2 - Coarse Tuning (грубая подстройка)

Чувствительность Pitch Bend определяет количество полутонов, на
которое смещается высота тона при получении сообщения Pitch Bend
Change с предельным верхним или нижним значением параметра. По
умолчанию принимается диапазон в два полутона в любую сторону.

RPN подстройки позволяют сместить строй инструмента в канале на
заданное количество полутонов при грубой, или центов (сотых долей
полутона) - при точной подстройке. За относительный нуль принимается
значение 64.

Интерпретация остальных параметров стандартом GM не определена. В ряде
инструментов для раздельной подстройки отдельных инструментов в
различных банках используются также два дополнительных RPN:

RPN 3 - Tuning Program Select
RPN 4 - Tuning Bank Select


                        Стандарты MIDI-систем
**********************************************************************


        Стандарт General MIDI (MMA)
        ===========================

Стандарт General MIDI (единый MIDI, GM) разработан ассоциацией
MIDI-производителей (MMA) в 1991 году в целях обеспечения частичной
совместимости выпускаемых MIDI-устройств и облегчения переноса
партитур между устройствами различных производителей. Устройство,
совместимое с GM Level 1, должно удовлетворять следующим требованиям:

- полифония не менее 24 голосов;
- наличие 128 мелодических и 47 ударных тембров;
- раздельный выбор тембров по всем 16 MIDI-каналам;
- поддержка специальных канальных контроллеров 121 и 123;
- выделение канала 10  для  ударных тембров, остальных каналов -
  для мелодических тембров.

Мелодическим и ударным тембрам присвоены постоянные номера.
Мелодические тембры распределены по 16 группам с 8 тембрами в каждой и
выбираются сообщением Program Change в каналах 1-9 и 11-16:


    Piano                           Chrom Percussion

  0 Acoustic Grand Piano          8 Celesta
  1 Bright Acoustic Piano         9 Glockenspiel
  2 Electric Grand Piano         10 Music Box
  3 Honky-tonk Piano             11 Vibraphone
  4 Electric Piano 1             12 Marimba
  5 Electric Piano 2             13 Xylophone
  6 Harpsichord                  14 Tubular Bells
  7 Clavinet                     15 Dulcimer

    Organ                           Guitar

 16 Drawbar Organ                24 Acoustic Guitar (nylon)
 17 Percussive Organ             25 Acoustic Guitar (steel)
 18 Rock Organ                   26 Electric Guitar (jazz)
 19 Church Organ                 27 Electric Guitar (clean)
 20 Reed Organ                   28 Electric Guitar (muted)
 21 Accordion                    29 Overdriven Guitar
 22 Harmonica                    30 Distortion Guitar
 23 Tango Accordion              31 Guitar Harmonics

    Bass                            Strings

 32 Acoustic Bass                40 Violin
 33 Electric Bass (finger)       41 Viola
 34 Electric Bass (pick)         42 Cello
 35 Fretless Bass                43 Contrabass
 36 Slap Bass 1                  44 Tremolo Strings
 37 Slap Bass 2                  45 Pizzicato Strings
 38 Synth Bass 1                 46 Orchestral Harp
 39 Synth Bass 2                 47 Timpani

   Ensemble                         Brass

 48 String Ensemble 1            56 Trumpet
 49 String Ensemble 2            57 Trombone
 50 Synth Strings 1              58 Tuba
 51 Synth Strings 2              59 Muted Trumpet
 52 Choir Aahs                   60 French Horn
 53 Voice Oohs                   61 Brass Section
 54 Synth Voice                  62 Synth Brass 1
 55 Orchestra Hit                63 Synth Brass 2

    Reed                            Pipe

 64 Soprano Sax                  72 Piccolo
 65 Alto Sax                     73 Flute
 66 Tenor Sax                    74 Recorder
 67 Baritone Sax                 75 Pan Flute
 68 Oboe                         76 Bottle Blow
 69 English Horn                 77 Shakuhachi
 70 Bassoon                      78 Whistle
 71 Clarinet                     79 Ocarina

    Synth Lead                      Synth Pad

 80 Lead 1 (square)              88 Pad 1 (new age)
 81 Lead 2 (sawtooth)            89 Pad 2 (warm)
 82 Lead 3 (calliope)            90 Pad 3 (polysynth)
 83 Lead 4 (chiff)               91 Pad 4 (choir)
 84 Lead 5 (charang)             92 Pad 5 (bowed)
 85 Lead 6 (voice)               93 Pad 6 (metallic)
 86 Lead 7 (fifths)              94 Pad 7 (halo)
 87 Lead 8 (bass + lead)         95 Pad 8 (sweep)

    Synth Effects                   Ethnic

 96 FX 1 (rain)                 104 Sitar
 97 FX 2 (soundtrack)           105 Banjo
 98 FX 3 (crystal)              106 Shamisen
 99 FX 4 (atmosphere)           107 Koto
100 FX 5 (brightness)           108 Kalimba
101 FX 6 (goblins)              109 Bagpipe
102 FX 7 (echoes)               110 Fiddle
103 FX 8 (sci-fi)               111 Shanai

    Percussive                      Sound Effects

112 Tinkle Bell                 120 Guitar Fret Noise
113 Agogo                       121 Breath Noise
114 Steel Drums                 122 Seashore
115 Woodblock                   123 Bird Tweet
116 Taiko Drum                  124 Telephone Ring
117 Melodic Tom                 125 Helicopter
118 Synth Drum                  126 Applause
119 Reverse Cymbal              127 Gunshot


Ударные тембры выбираются номером ноты в канале 10:


35 Acoustic Bass Drum            59 Ride Cymbal 2
36 Bass Drum 1                   60 High Bongo
37 Side Kick                     61 Low Bongo
38 Acoustic Snare                62 Mute High Conga
39 Hand Clap                     63 Open High Conga
40 Electric Snare                64 Low Conga
41 Low Floor Tom                 65 High Timbale
42 Closed High-Hat               66 Low Timbale
43 High Floor Tom                67 High Agogo
44 Pedal High Hat                68 Low Agogo
45 Low Tom                       69 Cabasa
46 Open High Hat                 70 Maracas
47 Low-Mid Tom                   71 Short Whistle
48 High-Mid Tom                  72 Long Whistle
49 Crash Cymbal 1                73 Short Guiro
50 High Tom                      74 Long Guiro
51 Ride Cymbal 1                 75 Claves
52 Chinese Cymbal                76 High Wood Block
53 Ride Bell                     77 Low Wood Block
54 Tambourine                    78 Mute Cuica
55 Splash Cymbal                 79 Open Cuica
56 Cowbell                       80 Mute Triangle
57 Crash Cymbal 2                81 Open Triangle
58 Vibraslap


Полифония в 24 голоса устанавливается либо общей для всех каналов,
либо с разделением на 16 голосов для мелодических каналов и 8 - для
ударных. Поведение системы при исчерпании свободных голосов стандартом
не определено.

В GM обязательна поддержка следующих контроллеров:

 1 - Modulation (глубина частотной модуляции)
 7 - Main Volume (громкость всех звуков в канале)
10 - Pan (панорама - положение инструмента на стерепанораме)
11 - Expression (экспрессивность, выразительность звука)
64 - Sustain Pedal (удержание звучания всех отпущенных нот)

Контроллер Main Volume служит для долговременной установки громкости в
канале, а Expression - для управления громкостью звучания отдельных
нот или партий.

Для устройств, поддерживающих, кроме GM, другие стандарты синтеза,
введен SysEx "General MIDI On" для переключения в режим GM: F0 7E 7F
09 01 F7.

Информация по GM выпускается MMA в печатном виде, краткие справки
можно найти на www.mma.com и www.midi.com.


        Стандарт General Synthesis (Roland)
        ===================================

Стандарт General Synthesis (единый синтез, GS) разработан фирмой
Roland в 1991 году, практически одновременно с GM. Целью создания
стандарта было обеспечение совместимости не только базового набора
тембров и способов управления, но и более тонких методов воздействия
на звук. Требования к устройству, поддерживающему GS:

- поддержка стандарта GM Level 1;
- поддержка 98 дополнительных тембров и 8 наборов ударных;
- приоритетное назначение голосов каналам - вначале 10, далее с 1;
- назначение дополнительных ударных каналов через SysEx;
- резервирование голосов в канале через SysEx;
- наличие управляемого резонансного фильтра в каждом канале;
- поддержка эффектов Reverb, Chorus и Delay.

Выбор банков осуществляется передачей старшего байта номера
(контроллер 0). Младший байт (контроллер 32) при этом либо не
используется, либо переключает режимы совместимости (например,
SC55/SC88). Основной набор тембров (General MIDI) выбирается банком 0.
Дополнительны мелодические тембры и звуковые эффекты распределены по
12 банкам, именуемым Variation Tones: 1..9, 16, 24 и 32.
Дополнительные наборы ударных и набор звуковых эффектов имеют
нумерацию (начиная с нуля):

 8  Room Kit
16  Power Kit
24  Electronic Kit
25  TR-808 Kit
32  Jazz Kit
40  Brush Kit
48  Orchestra Kit
56  SFX Kit


Стандартом введены дополнительные контроллеры:

 5 - Portamento Time (время скольжения от ноты к ноте)
 6 - Data Entry MSB (ввод данных, старший байт)
65 - Portamento (включение/выключение режима портаменто)
66 - Sostenuto Pedal (удержание звучания отдельных нот (аккорда))
67 - Soft Pedal (приглушение звука)
84 - Portamento Control (номер ноты начала скольжения)
91 - Reverb Level (глубина реверберации)
93 - Chorus Level (глубина хорового эффекта)
98 - NRPN LSB (номер незарегистрированного параметра, младший байт)
99 - NRPN MSB (номер незарегистрированного параметра, старший байт)

а также - набор NRPN для управления генераторами огибающих и
резонансными фильтрами (номера NRPN даны в виде значений старшего и
младшего байтов):

NRPN 1/8   - Vibrato Rate (частота вибрато)
NRPN 1/9   - Vibrato Depth (глубина вибрато)
NRPN 1/10  - Vibrato Delay (задержка до включения вибрато)
NRPN 1/32  - Filter Cutoff Frequency (частота среза фильтра)
NRPN 1/33  - Filter Resonance (глубина резонанса фильтра)
NRPN 1/99  - Attack Time (длительность атаки)
NRPN 1/100 - Decay Time (длительность первичного спада)
NRPN 1/102 - Release Time (длительность концевого затухания)

и для раздельной настройки параметров ударных инструментов (nn - номер
ноты инструмента):

NRPN 24/nn - Drum Pitch Coarse Tune (грубая подстройка высоты)
NRPN 26/nn - Drum TVA Level (уровень громкости)
NRPN 28/nn - Drum Pan (панорамная позиция)
NRPN 29/nn - Drum Reverb Send Level (глубина эффекта reverb)
NRPN 30/nn - Drum Chorus Send Level (глубина эффекта chorus)
NRPN 31/nn - Drum Delay Send Level (глубина эффекта delay)

Значения параметров задаются старшими байтами Data Entry (контроллер
6).

Инструменты, поддерживающие стандарты GM и GS, почти всегда имеют
дополнительные средства управления синтезом и обработкой звука,
расширяющие рамки стандарта. При этом используемые способы управления,
как правило, сохраняются внутри одной линии инструментов и внутри
инструментов одного производителя.


Устройства, совместимые с GS, должны поддерживать SysEx "General Synth
On" (переключение в режим Roland GS): F0 41 10 42 12 40 00 7F 00 41
F7.


        Стандарт Extended General (Yamaha)
        ==================================

Стандарт Extended General (расширенный единый, XG) разработан фирмой
Yamaha в 1994 году в виде расширения стандарта GS. Целью расширения
стандарта было в первую очередь внесение развитого управления
эффект-процессором и значительное увеличение количества тембров.
Устройства, удовлетворяющие XG, способны самостоятельно создавать
достаточно современное звучание без применения дополнительных
тонгенераторов и модулей обработки, и к тому же гарантируют
переносимость партитур с младших моделей на старшие практически без
доработки. Требования к устройству, поддерживающему базовый уровень XG
(Level 1):

- 32-голосная полифония;
- поддержка стандартов GM и GS;
- наличие 676 мелодических тембров и 21 набора ударных/эффектов;
- независимая подстройка высоты каждой ступени звукоряда;
- поддержка плавного скольжения высоты тона (портаменто);
- управление чувствительностью тембра к силе удара (Velocity);
- синхронное и независимое управление высотой и амплитудой звука,
  частотой среза фильтра от нескольких MIDI-контроллеров;
- наличие трех эффект-процессоров - Reverb, Chorus и Variation.

Возможные расширения XG:

- до 64 MIDI-каналов (до четырех раздельных MIDI-портов с возможностью
  управления всем устройством по любому из них);
- до 64 AD-каналов - аналоговых каналов с АЦП на входе, сигналы с
  которых поступают на обработку эффект-процессорами;
- дополнительный  трехполосный   эквалайзер;
- дополнительные эффект-процессоры - Distortion, Harmonizer и т.п.

Набор тембров состоит из двух перекрывающихся наборов: 480/10 в режиме
XG и 579/11 в режиме TG300B (GS).

В режиме GM доступны 128 стандартных мелодических тембров, стандартный
набор ударных и стандартные контроллеры/RPN. В режиме XG доступны
дополнительные банки, контроллеры, NRPN и SysEx.

Выбор банков осуществляется передачей обоих байтов номера; при этом
старший байт (контроллер 0) задает тип банка, а младший байт
(контроллер 32) - номер банка указанного типа. В XG определено четыре
типа банков:

  0  Normal (мелодические)
 64  SFX (звуковые эффекты с переменной высотой)
126  SFX (звуковые эффекты с фиксированной высотой)
127  Drums (ударные)

Любой MIDI-канал путем выбора банка может быть установлен в
мелодический или ударный режим.

В режиме XG доступны 44 банка мелодических тембров:

     0  Standard (General MIDI)
     1  KSP (Key Scale Panning - панорамирование по клавиатуре)
     3  Stereo (стереофонические)
     6  Single
     8  Slow (имитация медленного звукоизвлечения)
    12  Fast Decay (с быстрым затуханием)
    14  Double Attack (сдвоенные)
 16-17  Bright (яркие)
 18-19  Dark (тусклые)
    20  Resonant (с резонансом)
    24  Attack (с мягкой атакой)
    25  Release (с послезвучием при отпускании клавиши)
    27  Rezo Sweep (со скользящим резонансом)
    28  Muted (приглушенные)
    32  Detune 1 (с расстройкой слоев)
    33  Detune 2
    34  Detune 3
    35  Octave 1 (слои настроены в октаву)
    36  Octave 2
    37  5th 1 (слои настроены в квинту)
    38  5th 2
    39  Bend
 40-42  Tutti (слои из разных звуков)
    43  Velo-Switch (с переключением по силе удара)
    45  Velo-Xfade (с плавным переходом по силе удара)
 64-72,
96-101  Other wave (прочие тембры)

9 банков ударных тембров:

 0  Standard Kit 1
 1  Standard Kit 2
 8  Room Kit
16  Rock Kit
24  Electro Kit
25  Analog Kit
32  Jazz Kit
40  Brush Kit
48  Classic Kit

и 2 банка звуковых эффектов:

0  SFX 1
1  SFX 2

В режиме TG300B/GS раскладка банков и инструментов совпадает с GS.


Стандартом XG введены контроллеры, дополнительные к GS:

38 - Data Entry LSB (ввод данных, младший байт)
71 - Harmonic Content (содержание гармоник, добротность фильра)
72 - Release Time (время затухания звука после выключения ноты)
73 - Attack Time (время нарастания звука после включения ноты)
74 - Brightness (яркость, частота среза фильтра)
94 - Variation Level (глубина эффекта Variation)
96 - Data Increment (увеличение xRPN на 1, значение игнорируется)
97 - Data Decrement (уменьшение xRPN на 1, значение игнорируется)

Почти все контроллеры, стандартизированные в XG, до этого успели стать
стандартом де-факто во многих инструментах.

Стандартом также введены дополнительные к GS NRPN для ударных:

NRPN 20/nn - Drum Filter Cutoff (частота среза фильтра)
NRPN 21/nn - Drum Filter Resonance (глубина резонанса фильтра)
NRPN 22/nn - Drum Attack Time (длительность атаки)
NRPN 23/nn - Drum Decay Time (длительность первичного спада)
NRPN 25/nn - Drum Pitch Fine Tune (точная подстройка высоты)


Три эффект-процессора являются полностью независимыми, каждый из них
может обрабатывать сигнал от произвольного количества каналов. Reverb
и Chorus являются системными (System) эффектами - через них проходит
сигнал от каждого канала с возможностью независимой регулировки
глубины эффекта. Variation может работать в режиме как системного, так
и выделенного (Insertion) эффекта, когда процессор обрабатывает сигнал
только одного канала.

XG Level 1 определяет по 8 эффектов типа Reverb и Chorus и 36 эффектов
типа Variation, в число которых также входит по 8 таких же типов
Reverb и Chorus. Параметры каждого из трех выбранных эффектов
управляются посредством набора SysEx.

Устройства, совместимые с XG, должны поддерживать SysEx "XG System On"
(переключение в режим Yamaha XG): F0 43 1n 4C 00 00 7E 00 F7, где n -
номер устройства в сети (устанавливается по-разному для разных
устройств, по умолчанию 0). Для полной инициализации MIDI-системы
необходима подача этого сообщения из режима GM.


        Совместмость стандартов по звучанию
        ===================================

Общность инструментов внутри стандарта и между ними чаще всего
подразумевает только совпадение номеров и основных звуковых
характеристик. "Одинаковые" тембры на различных инструментах почти
всегда имеют различную окраску, динамику, яркость, громкость по
умолчанию и другие особенности, а "синтетические" тембры могут
совершенно отличаться друг от друга. Кроме этого, у разных
инструментов различается зависимость характера звука от силы удара по
клавише, динамика работы MIDI-контроллеров, положения контроллеров по
умолчанию и прочие "тонкие" параметры. Поэтому MIDI-партитура,
подготовленная для конкретного инструмента, на других инструментах
(даже внутри стандарта) часто звучит совершенно по-другому, и это
необходимо учитывать при переносе партитур с между инструментами
различных моделей. Единственным исключением из этого является стандарт
XG, специально ориентированный на повторение особенностей звучания
тембров во всех моделях устройств.


                           Применения MIDI
**********************************************************************


Основное применение MIDI - хранение и передача музыкальной информации.
Это может быть управление электронными музыкальными инструментами в
реальном времени, запись MIDI-потока, формируемого при игре
исполнителя, на носитель данных с последующим редактированием и
воспроизведением (так называемый MIDI-секвенсор), синхронизация
различной аппаратуры (синтезаторы, ритм-машины, магнитофоны, блоки
обработки звука, световая аппаратура, дымогенераторы и т.п.).

Устройства, предназначенные только для создания звука по
MIDI-командам, не имеющие собственных исполнительских органов,
называются тон-генераторами. Многие тон-генераторы имеют панель
управления и индикации для установки основных режимов работы и
наблюдения за ними, однако создание звука идет под управлением
поступающих MIDI-команд.

Устройства, предназначенные только для формирования MIDI-сообщений, не
содержащие средств синтеза звука, называются MIDI-контроллерами. Это
может быть клавиатура, педаль, рукоятка с несколькими степенями
свободы, ударная установка с датчиками способа и силы удара, а также -
струнный или духовой инструмент с датчиками и анализаторами способов
воздействия и приемов игры. Тон-генератор с достаточными возможностями
по управлению может весьма точно воспроизвести оттенки звучания
инструмента по сформированному контроллером MIDI-потоку.

Для хранения MIDI-партитур на носителях данных разработаны форматы SMF
(Standard MIDI File - стандартный MIDI-файл) трех типов:

0 - непосредственно MIDI-поток в том виде, в каком он передается по
интерфейсу.

1 - совокупность параллельных "дорожек", каждая из которых обычно
представляет собой отдельную партию произведения, исполняемую на одном
MIDI-канале.

2 - совокупность нескольких произведений, каждое из которых состоит из
нескольких дорожек.

В основном применяется формат 1, позволяющий хранить одно произведение
в файле.

Кроме MIDI-событий, файл содержит также "фиктивные события" (Meta
Events), используемые только для оформления файла и не передаваемые по
интерфейсу - информация о метрике и темпе, описание произведения,
названия партий, слова песни и т.п.

======================================================================

Полезные ссылки:

www.synthzone.com - обширный сайт по синтезаторам
www.yamaha.co.uk/xg/index.htm - область XG на сервере Yamaha
otto.cmr.fsu.edu/~kings/mid/midi.shtml - коллекция MIDI-файлов
www.usd.edu/~tgannon/midinfo.html - информация о MIDI

ftp://spider.nrcde.ru/pub/sound/docs - подборка разной документации

======================================================================

Большое спасибо всем приславшим ответы, рекомендации, замечания и
советы для этого описания.

Текст описания в альтернативной кодировке доступен для FReq на
2:5000/14@FidoNet по имени MIDIDESC. Полный пакет FAQ и описаний
доступен на ftp://spider.nrcde.ru/pub/text/tech/emtcfaqs.zip и через
страницу FAQ на http://spider.nrcde.ru. Пакет распространяется также
по FIDO fileecho XHRDDOCS.

======================================================================

Секция 2 из 2 - Предыдущая - Следующая

Вернуться в раздел "Мультимедиа" - Обсудить эту статью на Форуме
Главная - Поиск по сайту - О проекте - Форум - Обратная связь

© faqs.org.ru