Что такое миди файл
MIDI (Musical Instrument Digital Interface) — это стандарт обмена данными между цифровыми музыкальными инструментам. Он позволяет обмениваться такой информацией, как номер ноты, скорость нажатия, таймкод и др. MIDI поддерживает большинство выпускаемых музыкальных девайсов, исключения составляют многие модули модульных систем (например, Eurorack), а также такие специфичные вещи, как Monome.
1 Предпосылки
Необходимость в таком стандарте возникла примерно к концу 70-х годов. В то время синтезаторы управлялись напряжением с помощью интерфейса CV/Gate. Существовало несколько его видов, однако, наибольшую популярность получил вариант, предложенный фирмой Roland: в нем при увеличении напряжения на 1 В, частота генерируемого тона увеличивалась на одну октаву. Главным недостатком такого интерфейса является то, что с помощью него можно управлять только одним голосом полифонии. Для извлечения дополнительной ноты нужно добавлять еще один интерфейс CV/Gate. Кроме того, таким способом передается только сам факт нажатия клавиши и ее высота, чего однозначно мало для выразительной игры.
Другим недостатком синтезаторов того времени была сложность настройки. Для каждого нового звука музыкантам приходилось настраивать инструмент заново, что было очень не удобно на живых выступлениях. На концертах тех времен часто можно было увидеть целые стеллажи из синтезаторов — так музыканты выходили из ситуации. Со временем в инструменты были встроены мини-компьютеры, с помощью которых можно было сохранять положения ручек в пресеты.
Однако, есть еще один момент, который оказал большое влияние на разработку MIDI.
Несомненно, у каждого синтезатора свой характер звучания, каждый из них был силен в определенных типах звуков. Поэтому многие музыканты того времени практиковали игру сразу на двух инструментах, как бы используя лучшее из разных моделей. Наслоение звуков из различных синтезаторов стало исполнительским приемом, визитной карточкой многих музыкантов. [1]
2 История появления
К началу 80-х большинство производителей осознали необходимость создания единого интерфейса. Задача стояла такая: разработать стандарт передачи действий исполнителя в цифровой форме между всеми типами электромузыкальных инструментов. [1]
- Июнь 1981 — на выставке NAMM произошел первый разговор на тему единого интерфейса между главами Sequential Circuits, Roland и Oberheim.
- Осень 1981 — первая версия интерфейса под названием UMI (Universal Musical Interface).
- Июнь 1982 — на выставке NAMM были представлены плоды международной разработки. Ввиду возможных юридических проблем от названия UMI пришлось отказаться в пользу MIDI.
- Октябрь 1982 — закончена предварительная спецификация MIDI.
- Декабрь 1982 — выпушен первый синтезатор, оборудованный MIDI-интерфейсом — Sequencial Circuits Prophet 600.
- 1983 — сформированы комитет по MIDI-стандартам (JMSC), международная группа пользователей MIDI (IMUG), выпущена спецификация MIDI 1.0.
- 1984 — сформирована ассоциация MIDI-производителей (MMA).
3 Основы
Сам протокол состоит из трех частей [1]: спецификация формата данных, аппаратная спецификация интерфейса и спецификация хранения данных. В данной статье будет идти речь только о первой части.
4 Недостатки
Часть 2. Open Sound Contol
«Open Sound Control — это новый, оптимизированный для современных сетевых технологий протокол для взаимодействия компьютеров, звуковых синтезаторов и других мультимедиа устройств» — так был представлен OSC на международной конференции по компьютерной музыке в 1997 году [3]. OSC не является протоколом в том виде, каким является MIDI, так как он не описывает требований к аппаратному обеспечиванию — спецификации описывают лишь формат передачи данных. В этом плане OSC больше схож с XML или JSON, нежели с MIDI [8].
Пока оставим технические подробности и начнем с самого начала, с истории.
1 История, области применения
Open Sound Control был создан в 1997 году Мэттью Райтом (Matthew Wright) и Эдрианом Фридом (Adrian Freed) в Университете Калифорнии в центре новой музыки и аудио технологий (CNMAT — Center of New Music and Audio Technologies). Разработчики хотели использовать высокоскоростные сетевые технологии в интерактивной компьютерной музыке [4]. OSC не важно, по какому протоколу передаваться, так как он представляет собой всего лишь формат данных (binary message format), хотя большинство реализаций используют TCP/IP или UDP. Другой причиной создания было то, что MIDI с его нотами, каналами и контроллерами логично не подходил к разрабатывающемуся в то время синтезатору CAST (CNMAT Additive Synthesis Tools), оно и понятно, ведь MIDI — это клавишно-ориентированный протокол, который разрабатывался для управления одним синтезатором с другого [1].
- Языки программирования: C/C++, Java, Php, Python, Ruby.
- Среды визуального программирования и синтеза: Bidule, Chuck, Common Music CPS, Intakt, Max/MSP, Open Sound World, Pd, SuperCollider, Reaktor, VVVV.
- Устройства для работы с сенсорами: EtherSense, Gluion, IpSonLab Kroonde, Lemur, Smart, Controller, Teabox, Toaster.
- Другие программы: EyesWeb, Picker, SonART, SpinOSC.
2 Особенности
/synth1/noteoff 54
/synth1/noteon 60
Фактически они могут прийти в обратном порядке:
/synth1/noteoff 60
/synth1/noteon 54
4 Pattern matching
- "?" — соответствует любому одному символу.
- "*" — соответствует последовательности из нуля или любого другого числа символов.
- Символы в квадратных скобках (например, "[string]") — соответствует любому символу в строке. В квадратных скобках дефис (-) и восклицательный знак (!) имеют специальное значение:
дефис между двумя символами означает диапазон чисел в ASCII последовательности (дефис в конце строки не имеет специального значения);
Автор: Евгений Музыченко (Eugene Muzychenko) 2:5000/14@FidoNet
Copyright (©) 1996-97, Eugene V. Muzychenko
Все права в отношении данного текста принадлежат автору. При воспроизведении текста или его части сохранение Copyright обязательно. Коммерческое использование допускается только с письменного разрешения автора.
Аппаратная спецификация MIDI
Спецификация формата данных MIDI
- 8n nn vv — Note Off (выключение ноты)
- 9n nn vv — Note On (включение ноты)
- An nn pp — Key Pressure (Polyphonic Aftertouch, давление на клавишу)
- Bn cc vv — Control Change (смена значения контроллера)
- Cn pp — Program Change (смена программы (тембра, инструмента))
- Dn pp — Channel Pressure (Channel Aftertouch, давление в канале)
- En ll mm — Pitch Bend Change (смена значения Pitch Bend)
Описание работы контроллеров
Контроллеры Bank Select
- 0 — Bank Select MSB (выбор банка, старший байт)
- 32 — Bank Select LSB (выбор банка, младший байт)
Контроллер Modulation
Задает глубину частотной модуляции в канале. Управление абсолютное. Значение 0 отключает модуляцию, значение 127 устанавливает максимальную глубину. Стандартное значение — 0. Действует на последующие и уже звучащие ноты.
Контроллер Portamento Time
Задает время плавного скольжения от частоты предыдущей ноты до частоты очередной ноты. Управление абсолютное. Значение 0 соответствует минимальному времени, 127 — максимальному. Стандартное значение не определено.
Контроллер Main Volume
Задает громкость звучания внутри канала. Управление абсолютное. Стандартное значение — обычно 100. Действует на последующие и уже звучащие ноты.
Контроллер Pan
Задает соотношение уровня стереоканалов (точку стереопанорамы) для канала. Управление абсолютное. Значение 0 — крайняя левая позиция, 64 — средняя, 127 — крайняя правая. Стандартное значение — 64. Действует на последующие и уже звучащие ноты.
Контроллер Expression
Задает степень выразительности звука. Управление абсолютное. На простых инструментах дублирует контроллер Main Volume и действует и на последующие, и на уже звучащие ноты. На инструментах с развитым синтезом управляет более тонкими параметрами выразительности, и действует только на последующие ноты. Стандартное значение — обычно 127.
Контроллер Harmonic Content
Задает добротность (глубину резонанса) фильтра канала, позволяющего подчеркнуть высокочастотные гармоники тембра. Увеличение добротности увеличивает крутизну характеристики фильтра в области среза, усиливая частоты, лежащие непосредственно ниже частоты среза. Управление относительное (0..64..127). Стандартное значение — 64.
Контроллер Release Time
Задает время концевого затухания звучания нот с момента отработки Note Off (явного или автоматического) до полного исчезновения звука. Управление относительное (0..64..127). Стандартное значение — 64.
Контроллер Attack Time
Задает время начальной атаки — нарастания громкости звучания нот с момента отработки Note On до максимального значения громкости. Управление относительное (0..64..127). Стандартное значение — 64.
Контроллер Brightness
Задает частоту среза фильтра канала, управляющую ослаблением высоких частот звука. Управление относительное (0..64..127). Стандартное значение — 64.
Контроллер Portamento Control
Контроллер Reverb Level
Задает глубину выбранного эффекта типа реверберации (основанного на постоянной задержке сигнала) — Room, Hall, Delay, Echo и т.п. Управление — абсолютное или относительное в зависимости от инструмента.
Контроллер Chorus Level
Задает глубину эффекта типа хорового (основанного на переменной задержке сигнала) — Chorus, Flanger, Phaser и т.п. Управление — абсолютное или относительное в зависимости от инструмента.
Контроллер Variation Level
Задает глубину эффекта, выбранного в качестве Variation. Управление — абсолютное или относительное в зависимости от инструмента.
Контроллер-переключатель Sustain
Контроллер-переключатель Sostenuto
Действует подобно Sustain, но удерживает звучание только тех нот, которые были нажаты на момент включения контроллера. Последующие нажатия и отпускания отрабатываются в обычном порядке. Иначе говоря, откладывается отработка Note Off только для тех нот, Note On для которых поступили до включения режима.
Контроллер-переключатель Soft
По аналогии с левой педалью фортепиано, вызывает смягчение звучания для нот, нажатых во время действия режима. Способ реализации - простое уменьшение громкости или более тонкое управление — определяется инструментом.
Контроллер-переключатель Portamento
Контроллеры RPN, NRPN и Data Entry
- 98 — NRPN LSB (младший байт NRPN)
- 99 — NRPN MSB (старший байт NRPN)
- 100 — RPN LSB (младший байт RPN)
- 101 — RPN MSB (старший байт RPN)
- 6 — Data Entry MSB (ввод данных, старший байт)
- 38 — Data Entry LSB (ввод данных, младший байт)
- 96 — RPN Increment (увеличение RPN на 1, значение игнорируется)
- 97 — RPN Decrement (уменьшение RPN на 1, значение игнорируется)
- RPN 0 — Pitch Bend Sensitivity (чувствительность Pitch Bend)
- RPN 1 — Fine Tuning (точная подстройка)
- RPN 2 — Coarse Tuning (грубая подстройка)
- RPN 3 — Tuning Program Select
- RPN 4 — Tuning Bank Select
- 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 (длительность концевого затухания)
- 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)
- 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 (точная подстройка высоты)
- 120 — All Sounds Off
- 121 — Reset All Controllers
- 122 vv — Local Control
- 123 — All Notes Off
- 124 — Omni Off
- 125 — Omni On
- 126 nn — Mono
- 127 — Poly
- 1 — Omni On, Poly
- 2 — Omni On, Mono
- 3 — Omni Off, Poly
- 4 — Omni Off, Mono
GS и XG
Два похожих друг на друга стандарта предложили фирмы Roland и Yamaha. GS начал развиваться в 1991 году сразу за GM и в последующем неоднократно расширялся в связи с выпуском новых продвинутых моделей. XG от Ямахи начал активно продвигаться в 1996 году и при его разработке видимо были учтены наработки Роланда. Спецификация XG отличается огромным количеством настроек эффект-процессора.
Описание работы контроллеров
Контроллеры Bank Select
- 0 — Bank Select MSB (выбор банка, старший байт)
- 32 — Bank Select LSB (выбор банка, младший байт)
Контроллер Modulation
Задает глубину частотной модуляции в канале. Управление абсолютное. Значение 0 отключает модуляцию, значение 127 устанавливает максимальную глубину. Стандартное значение — 0. Действует на последующие и уже звучащие ноты.
Контроллер Portamento Time
Задает время плавного скольжения от частоты предыдущей ноты до частоты очередной ноты. Управление абсолютное. Значение 0 соответствует минимальному времени, 127 — максимальному. Стандартное значение не определено.
Контроллер Main Volume
Задает громкость звучания внутри канала. Управление абсолютное. Стандартное значение — обычно 100. Действует на последующие и уже звучащие ноты.
Контроллер Pan
Задает соотношение уровня стереоканалов (точку стереопанорамы) для канала. Управление абсолютное. Значение 0 — крайняя левая позиция, 64 — средняя, 127 — крайняя правая. Стандартное значение — 64. Действует на последующие и уже звучащие ноты.
Контроллер Expression
Задает степень выразительности звука. Управление абсолютное. На простых инструментах дублирует контроллер Main Volume и действует и на последующие, и на уже звучащие ноты. На инструментах с развитым синтезом управляет более тонкими параметрами выразительности, и действует только на последующие ноты. Стандартное значение — обычно 127.
Контроллер Harmonic Content
Задает добротность (глубину резонанса) фильтра канала, позволяющего подчеркнуть высокочастотные гармоники тембра. Увеличение добротности увеличивает крутизну характеристики фильтра в области среза, усиливая частоты, лежащие непосредственно ниже частоты среза. Управление относительное (0..64..127). Стандартное значение — 64.
Контроллер Release Time
Задает время концевого затухания звучания нот с момента отработки Note Off (явного или автоматического) до полного исчезновения звука. Управление относительное (0..64..127). Стандартное значение — 64.
Контроллер Attack Time
Задает время начальной атаки — нарастания громкости звучания нот с момента отработки Note On до максимального значения громкости. Управление относительное (0..64..127). Стандартное значение — 64.
Контроллер Brightness
Задает частоту среза фильтра канала, управляющую ослаблением высоких частот звука. Управление относительное (0..64..127). Стандартное значение — 64.
Контроллер Portamento Control
Контроллер Reverb Level
Задает глубину выбранного эффекта типа реверберации (основанного на постоянной задержке сигнала) — Room, Hall, Delay, Echo и т.п. Управление — абсолютное или относительное в зависимости от инструмента.
Контроллер Chorus Level
Задает глубину эффекта типа хорового (основанного на переменной задержке сигнала) — Chorus, Flanger, Phaser и т.п. Управление — абсолютное или относительное в зависимости от инструмента.
Контроллер Variation Level
Задает глубину эффекта, выбранного в качестве Variation. Управление — абсолютное или относительное в зависимости от инструмента.
Контроллер-переключатель Sustain
Контроллер-переключатель Sostenuto
Действует подобно Sustain, но удерживает звучание только тех нот, которые были нажаты на момент включения контроллера. Последующие нажатия и отпускания отрабатываются в обычном порядке. Иначе говоря, откладывается отработка Note Off только для тех нот, Note On для которых поступили до включения режима.
Контроллер-переключатель Soft
По аналогии с левой педалью фортепиано, вызывает смягчение звучания для нот, нажатых во время действия режима. Способ реализации - простое уменьшение громкости или более тонкое управление — определяется инструментом.
Контроллер-переключатель Portamento
Контроллеры RPN, NRPN и Data Entry
- 98 — NRPN LSB (младший байт NRPN)
- 99 — NRPN MSB (старший байт NRPN)
- 100 — RPN LSB (младший байт RPN)
- 101 — RPN MSB (старший байт RPN)
- 6 — Data Entry MSB (ввод данных, старший байт)
- 38 — Data Entry LSB (ввод данных, младший байт)
- 96 — RPN Increment (увеличение RPN на 1, значение игнорируется)
- 97 — RPN Decrement (уменьшение RPN на 1, значение игнорируется)
- RPN 0 — Pitch Bend Sensitivity (чувствительность Pitch Bend)
- RPN 1 — Fine Tuning (точная подстройка)
- RPN 2 — Coarse Tuning (грубая подстройка)
- RPN 3 — Tuning Program Select
- RPN 4 — Tuning Bank Select
- 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 (длительность концевого затухания)
- 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)
- 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 (точная подстройка высоты)
- 120 — All Sounds Off
- 121 — Reset All Controllers
- 122 vv — Local Control
- 123 — All Notes Off
- 124 — Omni Off
- 125 — Omni On
- 126 nn — Mono
- 127 — Poly
- 1 — Omni On, Poly
- 2 — Omni On, Mono
- 3 — Omni Off, Poly
- 4 — Omni Off, Mono
Общие характеристики
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, количество инструментов у старших моделей — свыше тысячи.
Как конвертировать MIDI-файл
FileZigZag – это бесплатный онлайн-конвертер файлов, который может конвертировать MIDI-файлы в MP3, WAV, AAC, FLAC, OGG, WMA и некоторые другие аудио форматы.
SolMiRe MIDI – это ещё один веб-сайт, который конвертирует MIDI-файлы в MP3, но он предлагает некоторые дополнительные настройки, недоступные через FileZigZag.
Вышеуказанная программа Midi Sheet Music может быть использована для преобразования MIDI-файла в ноты.
Список контроллеров (Control Changes)
В таблице обозначены:
X — реакция на функцию (контроллер) предусмотрена стандартом;
O — функция (контроллер) не задействована;
* — не для всех моделей (минимальная конфигурация не предусматривает).
Интерпретация функций контроллеров выбора банка 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) после фазы атаки звука.
В таблице обозначены:
X — реакция на функцию (параметр) предусмотрена стандартом;
O — функция (параметр) не задействована.
В таблице обозначены:
X — реакция на функцию (параметр) предусмотрена стандартом;
O — функция (параметр) не задействована;
* — параметры повторяют одноименные контроллеры;
xx — номер ударного инструмента.
GM2 не предусматривает управление по NRPN (на то и название!). В XG, в отличие от GS, добавили тонкие, но вполне востребованные настройки для ударных инструментов.
В таблице обозначены:
X — реакция на функцию предусмотрена стандартом;
O — функция не задействована;
* — не для всех моделей (минимальная конфигурация не предусматривает);
** — реализовано недостаточно полно.
В строки Variation & Insertion включены все эффекты, не относящиеся по типу к реверберациям и хорусам (дисторшн, тремоло и пр.).
Как уже говорилось выше, XG отличается массой настроек эффект-процессора, но последние GS модели (8820, 8850) довольно близко подошли к спецификации от Ямахи.
GM2 обеспечивает базовую функциональность управления реверберацией и хорусом. Другие типы эффектов не предусмотрены.
General MIDI 2 (GM2)
В 1999 году MMA наконец «родила» расширение GM, получившее наименование General MIDI Level 2 (GM2). В новом стандарте расширили полифонию и палитру доступных инструментов до 256, добавили ряд новых контроллеров. В GM2 прослеживается влияние стандартов Роланда и Ямахи. Несмотря на соглашение между этими фирмами General MIDI Level 2 пока не получил широкого распространения.
Pitch Bend Change (ll — младший, mm — старший байт значения)
Задает смещение высоты тона для всех нот в канале — как звучащих, так и последующих. Значение, образованное двумя 7-разрядными величинами, изменяется в диапазоне 0–16383; среднее значение — 8192 — принимается за относительный нуль, что дает условный диапазон изменения -8192–8191. Чувствительность Pitch Bend может изменяться при помощи RPN 0; по умолчанию принимается предельное смещение на два полутона в любую сторону.
System Exclusive (SysEx)
Sequential Circuits | 01 |
---|---|
Big Briar | 02 |
Octave / Plateau | 03 |
Moog | 04 |
Passport Designs | 05 |
Lexicon | 06 |
PAIA | 11 |
Simmons | 12 |
Gentle Electric | 13 |
Fairlight | 14 |
Bon Tempi | 20 |
S.I.E.L. | 21 |
SyntheAxe | 23 |
Kawai | 40 |
Roland | 41 |
Korg | 42 |
Yamaha | 43 |
SysEx "General MIDI On" (переключение в режим GM для устройств, поддерживающих дополнительные стандарты): F0 7E 7F 09 01 F7.
SysEx "General Synth On" (переключение в режим Roland GS для устройств, поддерживающих этот стандарт): F0 41 10 42 12 40 00 7F 00 41 F7.
SysEx "XG System On" (переключение в режим Yamaha XG для устройств, поддерживающих этот стандарт): F0 43 1n 4C 00 00 7E 00 F7, где n — номер устройства в сети (устанавливается по-разному для разных устройств, по умолчанию 0).
Ряд устройств требует, чтобы включение режимов GS и XG выполнялось из режима GM. Переключение между режимами обычно занимает несколько десятков миллисекунд и вызывает также полный сброс MIDI-системы устройства.
Tune Request
Предписывает выполнить автоматическую подстройку устройствам, нуждающимся в ней. Обычно это относится к аналоговым синтезаторам, строй которых может смещаться из-за нестабильности управляющих элементов.
Song Position Pointer (ll — младший, mm — старший байт)
Служит для установки позиции в партитуре для устройств, имеющих встроенный секвенсор, автоаккомпанемент или ритм-блок. Задается номером четвертной (quarter) ноты с начала партитуры.
Song Select (ss — условный номер партитуры)
Start
Запускает прогрывание или запись выбранной партитуры с начала.
Останавливает проигрывание или запись партитуры.
Continue
Запускает проигрывание или запись партитуры с прерванного места, либо с позиции, установленной с помощью Song Position Pointer.
Timing Clock
Active Sensing
Файл с расширением .MID или .midi представляет собой файл цифрового интерфейса музыкальных инструментов. В отличие от обычных аудиофайлов, таких как MP3 или WAV, MIDI-файлы не содержат реальных аудиоданных и поэтому имеют гораздо меньший размер. Например, файл MID может объяснить, какие ноты воспроизводятся, когда они воспроизводятся, и какой длины или громкости должна быть каждая нота.
Файлы в этом формате, в основном, являются учебными файлами, которые объясняют, как звук должен быть произведен после подключения к устройству воспроизведения или загрузки в определенную программу, которая знает, как интерпретировать данные.
Это делает MIDI-файлы идеальными для обмена музыкальной информацией между аналогичными приложениями и для передачи через интернет-соединения с низкой пропускной способностью. Небольшой размер также позволяет хранить файлы на небольших устройствах, таких как дискеты, – обычная практика в ранних играх для ПК.
Файл с расширением .MID может быть файлом данных MapInfo. Вы можете открыть его с помощью GDAL или Pitney Bowes MapInfo.
Всё ещё не можете открыть файл
На этом этапе, если вы попробовали все вышеперечисленное, и ни один из веб-сайтов или программ не открывает ваш файл, важно знать, что некоторые файлы имеют одинаковые буквы в расширении файла, даже если их форматы не связаны.
Другими словами, ваш файл может выглядеть как MIDI или MID, когда, на самом деле, это MII. В этом случае, если у вас действительно файл MII, то это файл виртуального аватара Wii.
Другое расширение файла, похожее на MIDI и MID, – это MDI, используемое для файлов Microsoft Document Imaging. Файлы MDI не работают с программами, указанными выше, но вместо этого требуют Microsoft Office или конвертер MDI2DOC (для преобразования MDI в DOC).
Если вы уже знаете, как открывать файлы Musical Instrument Digital Interface и вместо этого ищете способы загрузки файлов MIDI, попробуйте Hit Trax.
Вступление от Очень злого редактора:
Аббревиатура MIDI расшифровывается как Musical Instrument Digital Interface. Впрочем, если для Вас это — открытие, то дальше читать особого смысла нет. :)
Чем же интересна эта статья, от нашего постоянного автора, Сергея Котова, специализирующегося на обзорах профессионального MIDI-оборудования? В отличие от тысячи подобных материалов данная статья не цитирует спецификации по электрическому строению сигналов или соответствия номеров именам GM-инструментов. Вместо этого читателю (компьютерному музыканту или просто любителю экспериментов с MIDI-файлами), предлагается ознакомится с некоторыми конкретными практическими сведениями и рекомендациями.
Практически все современные электронные музыкальные инструменты (в том числе и звуковые карты) имеют управление по MIDI. Подробно об этом цифровом интерфейсе уже неоднократно писалось и в печатных изданиях и в электронных ресурсах. Смотрите, например, статью Описание интерфейса MIDI на сайте iXBT. Тем не менее, обычно рассматривается лишь один из существующих стандартов — General MIDI (GM), в то время как уже довольно давно существуют два расширения этой спецификации: GS, предложенный фирмой Roland и XG от фирмы Yamaha. Кроме того, начинает продвигаться новый общий стандарт GM2, предложенный в 1999 году MMA (MIDI Manufacturers Association).
Целью данной справочной статьи является сравнение возможностей, предоставляемых каждой из перечисленных спецификаций, что поможет заинтересованному читателю полнее использовать их особенности или наоборот, создавать MIDI-файлы, совместимые со всеми стандартами. Возможно, эта статья поможет сделать более разумный выбор при покупке музыкального оборудования из спектра, представленного сегодня на рынке. Предполагается, что читатель знаком с основами формата MIDI.
Несколько мифов
Довольно часто можно слышать о «плохом качестве MIDI-музыки». MIDI-файл - не музыка, это набор команд по управлению электронными музыкальными инструментами и ничего более. Вспомним классический духовой орган. Здесь исполнитель посредством сложнейшей механики управляет подачей воздуха в комбинации звучащих труб. MIDI — электронный аналог такой механики. Это инструмент, при помощи которого исполнитель реализует свои замыслы. Поэтому, совершенно бессмысленно говорить о качестве MIDI, имеет место лишь разговор о возможностях управления, предоставляемого этим цифровым интерфейсом.
«XG лучше звучит чем GM». Да, спецификация XG предоставляет больше документированных возможностей по управлению синтезом звука, но это не значит, что электронные инструменты от Ямахи лучше других GM совместимых устройств. У XG есть преимущество в однообразии звука и управления различными моделями устройств, от самых дешевых (звуковушки серии 7xx за $10-20) до самых дорогих (MU128), но к качеству самого звука это отношения почти не имеет.
Выводы
Спецификация GM давно устарела. Все современные модели звукосинтезирующих устройств, носящие логотип GM, так или иначе её превосходят, особенно в части управления эффектами. Спецификация GM2 зафиксировала существующее положение дел и вполне может использоваться при проектировании недорогих SamplePlayBack-устройств.
GS и XG по управлению довольно близки друг к другу, но состав инструментов у них существенно различен, что мешает переносимости GS и XG MIDI-файлов. Только несколько моделей от Корга (!) совмещают в себе стандарты GS и XG (N1, 5, 5ex).
Спецификации MIDI прямо не влияют на качество звука. Нужно только учитывать, что и GS, и XG имеют общность управления и тембров для разного спектра моделей, от дешевых до дорогих. Это позволяет, начав работу (развлечение) с малого, затем перейти на более стоящие вещи, не растеряв багаж своих наработок.
В этом материале мы рассмотрим "сущность" MIDI, а также историю и возможности синхронизации - вопросы, безусловно, интересные для всех, кто работает со звуком.
Intro…
MIDI (Musical Instrument Digital Interface) - это протокол, содержащий набор стандартных команд для взаимодействия между звуковыми устройствами. В конце 70-х годов индустрия уже имела в арсенале множество инструментов и устройств обработки, но они никак не были связаны между собой. Со стороны производителей было предложено несколько вариантов взаимодействий, но общей стандартизации не было.
Толку от того, что вы можете подключить две или три модели - этого мало. Причем такие варианты коммутаций обычно делались на заказ. На выставке NAMM 1981 года между Икутаро Какехаши (Roland), Томом Оберхеймом (Oberheim) и Дэйвом Смитом (президент Sequential Circuits) состоялся первый разговор на эту тему. В результате, общими усилиями был разработан интерфейс MIDI. Официальной датой его возникновения считается 1982 год. Для поддержки этого стандарта в 1983-1984 гг были сфомированы комитет по MIDI стандартам (JMSC), Ассоциация MIDI Производителей (MMA) и Международная MIDI Ассоциация (IMA), задачей которых было осуществление скоординированных действий между производителями, а также пользователями.
За прошедшее время в стандартизацию MIDI 1.0 было добавлено несколько новых полезных команд и функций, но сейчас мы пользуемся в основном тем, что было разработано в начале 80-х. При этом за прошедший период было выпущено столько аппаратуры, поддерживающей Musical Instrument Digital Interface, что уход этого стандарта видится невозможным. Его постоянно пытаются заменить и придумать что-то новое, но изобретаемые стандарты должны обязательно быть совместимыми с MIDI - иначе их не примет рынок.
С внедрением MIDI музыканты получили как плюсы, так и минусы. Бесспорно, положительная сторона этого протокола - небольшой объем данных по сравнению с тем же аудио. Это активно использовалось на заре развития компьютерных игр, когда аппаратные мощности и физические объемы памяти просто не позволяли вращать большим объемом аудиоинформации. Гейм композиторы того времени активно пользовались MIDI-синтезаторами для создания музыки. Теперь это же MIDI-информация активно используется в портативных устройствах и мобильных телефонах.
Второй плюс MIDI состоит в том, что в этом стандарте изначально закладывалась полифония. То есть можно было без труда использовать несколько инструментов.
Наверняка многие из вас видели гнезда MIDI In, MIDI Thru и MIDI Out (стандартные пятиштырьковые разъемы DIN-5) на коммутационных панелях синтезаторов, сэмплеров, эффект-процессоров и т.п. В идее использовать три потока была заранее заложена возможность сложной коммутации, ведь MIDI Thru - это тоже самое, что и MIDI Out. Таким образом, можно было подключать сразу несколько устройств как это показано на рисунке. Варианты коммутации могут быть различными.
Сейчас возможности сложной аппаратной MIDI коммутации используются довольно редко, в основном в больших аппаратных студиях. Распайка MIDI-кабелей в данном случае выглядит следующим образом:
Контакты 4 и 5 являются сигнальными, а 2 - экранный. При этом 4 - это "+", а 5 - "-". Для коммутации подойдет обычный двухжильный кабель, ограничение по длине - до 15 метров.
С внедрением MIDI ситуация на рынке синтезаторов изменилась. Получили распространения устройства, именуемые звуковыми модулями, а, по сути, они представляли собой синтезатор или сэмплер, но без клавиатуры. Такие модули управляются по MIDI.
Обычной коммутации оказалось мало - необходимо было обеспечить инструментальную совместимость различных устройств. То есть, если вы играете на тембре пианино, то желательно, чтобы все устройства воспринимали и воспроизводили этот же тембр. Поэтому следующим шагом в развитии MIDI было создание стандартного протокола General MIDI, который являлся ничем иным как стандартизированным набором из 128 инструментов (программ) плюс один банк из 44 звуков (пэтчей) ударных. При этом за мелодическими инструментами осталось 15 каналов, а за ударными был закреплен один, идущий под номером 10.
Стандартный банк General MIDI предусматривал практически все инструменты, использующиеся в реальной индустрии, начиная от скрипок и заканчивая некоей эмуляцией современных органов.
- 0 Acoustic Grand Piano
- 1 Bright Acoustic Piano
- 2 Electric Grand Piano
- 3 Honky-tonk Piano
- 4 Electric Piano 1
- 5 Electric Piano 2
- 6 Harpsichord
- 7 Clavinet
- 8 Celesta
- 9 Glockenspiel
- 10 Music Box
- 11 Vibraphone
- 12 Marimba
- 13 Xylophone
- 14 Tubular Bells
- 15 Dulcimer
- 16 Drawbar Organ
- 17 Percussive Organ
- 18 Rock Organ
- 19 Church Organ
- 20 Reed Organ
- 21 Accordion
- 22 Harmonica
- 23 Tango Accordion
- 24 Acoustic Guitar (nylon)
- 25 Acoustic Guitar (steel)
- 26 Electric Guitar (jazz)
- 27 Electric Guitar (clean)
- 28 Electric Guitar (muted)
- 29 Overdriven Guitar
- 30 Distortion Guitar
- 31 Guitar Harmonics
- 32 Acoustic Bass
- 33 Electric Bass (finger)
- 34 Electric Bass (pick)
- 35 Fretless Bass
- 36 Slap Bass 1
- 37 Slap Bass 2
- 38 Synth Bass 1
- 39 Synth Bass 2
- 40 Violin
- 41 Viola
- 42 Cello
- 43 Contrabass
- 44 Tremolo Strings
- 45 Pizzicato Strings
- 46 Orchestral Harp
- 47 Timpani
- 48 String Ensemble 1
- 49 String Ensemble 2
- 50 Synth Strings 1
- 51 Synth Strings 2
- 52 Choir Aahs
- 53 Voice Oohs
- 54 Synth Voice
- 55 Orchestra Hit
- 56 Trumpet
- 57 Trombone
- 58 Tuba
- 59 Muted Trumpet
- 60 French Horn
- 61 Brass Section
- 62 Synth Brass 1
- 63 Synth Brass 2
- 64 Soprano Sax
- 65 Alto Sax
- 66 Tenor Sax
- 67 Baritone Sax
- 68 Oboe
- 69 English Horn
- 70 Bassoon
- 71 Clarinet
- 72 Piccolo
- 73 Flute
- 74 Recorder
- 75 Pan Flute
- 76 Bottle Blow
- 77 Shakuhachi
- 78 Whistle
- 79 Ocarina
- 80 Lead 1 (square)
- 81 Lead 2 (sawtooth)
- 82 Lead 3 (calliope)
- 83 Lead 4 (chiff)
- 84 Lead 5 (charang)
- 85 Lead 6 (voice)
- 86 Lead 7 (fifths)
- 87 Lead 8 (bass + lead)
- 88 Pad 1 (new age)
- 89 Pad 2 (warm)
- 90 Pad 3 (polysynth)
- 91 Pad 4 (choir)
- 92 Pad 5 (bowed)
- 93 Pad 6 (metallic)
- 94 Pad 7 (halo)
- 95 Pad 8 (sweep)
- 96 FX 1 (rain)
- 97 FX 2 (soundtrack)
- 98 FX 3 (crystal)
- 99 FX 4 (atmosphere)
- 100 FX 5 (brightness)
- 101 FX 6 (goblins)
- 102 FX 7 (echoes)
- 103 FX 8 (sci-fi)
- 104 Sitar
- 105 Banjo
- 106 Shamisen
- 107 Koto
- 108 Kalimba
- 109 Bagpipe
- 110 Fiddle
- 111 Shanai
- 112 Tinkle Bell
- 113 Agogo
- 114 Steel Drums
- 115 Woodblock
- 116 Taiko Drum
- 117 Melodic Tom
- 118 Synth Drum
- 119 Reverse Cymbal
- 120 Guitar Fret Noise
- 121 Breath Noise
- 122 Seashore
- 123 Bird Tweet
- 124 Telephone Ring
- 125 Helicopter
- 126 Applause
- 127 Gunshot
- 35 Acoustic Bass Drum
- 36 Bass Drum 1
- 37 Side Kick
- 38 Acoustic Snare
- 39 Hand Clap
- 40 Electric Snare
- 41 Low Floor Tom
- 42 Closed High-Hat
- 43 High Floor Tom
- 44 Pedal High Hat
- 45 Low Tom
- 46 Open High Hat
- 47 Low-Mid Tom
- 48 High-Mid Tom
- 49 Crash Cymbal 1
- 50 High Tom
- 51 Ride Cymbal 1
- 52 Chinese Cymbal
- 53 Ride Bell
- 54 Tambourine
- 55 Splash Cymbal
- 56 Cowbell
- 57 Crash Cymbal 2
- 58 Vibraslap
- 59 Ride Cymbal 2
- 60 High Bongo
- 61 Low Bongo
- 62 Mute High Conga
- 63 Open High Conga
- 64 Low Conga
- 65 High Timbale
- 66 Low Timbale
- 67 High Agogo
- 68 Low Agogo
- 69 Cabasa
- 70 Maracas
- 71 Short Whistle
- 72 Long Whistle
- 73 Short Guiro
- 74 Long Guiro
- 75 Claves
- 76 High Wood Block
- 77 Low Wood Block
- 78 Mute Cuica
- 79 Open Cuica
- 80 Mute Triangle
- 81 Open Triangle
Помимо этого, предусмотрен ряд стандартных эффектов, таких как реверберация, хорус, вибрато и т.п.
Таким образом, предполагалось, что музыкант создав аранжировку на своем синтезаторе, сможет без труда перенести ее на устройство от другого производителя и прослушать в нормальном качестве. Но не тут-то было. Производители отказывались делать однотипные по звучанию устройства, и, к тому же со временем набора GM стало просто не хватать. Остановимся сейчас на первом моменте.
Дело в том, что синтезированные модели инструментов у каждой фирмы является практически самостоятельно созданным ноу-хау. И скрипка на Korg N-1 отличается от той же скрипки на YAMAHA PSR-520. Они отличаются не только по вложенным алгоритмам, но главным образом по динамике и частотному наполнению. В результате, аранжировка сделанная с помощью N-1 будет слушаться совершенно по другому на других синтезаторах. Некоторые инструменты могут исчезнуть в силу слабой динамики, а некоторые зазвучат громче. Это касается и реализаций эффектов. В результате под каждое устройство нужно было делать пересведение. И в данной ситуации мог быть только один странный выход - монополизации рынка GM-устройств одним производителем, для того, чтобы обеспечить полноценную совместимость. К счастью этого не произошло.
- Стали создавать несколько параллельных банков из 128 инструментов.
- Плюнули на все и занялись производством собственных уникальных звуков, предусматривая MIDI как основной вариант управления блоками синтеза и не более того.
В 1999 году появился стандарт GM2, имеющий большее количество инструментов, но это не спасло ситуацию. Параллельно с этим, раньше или позже появились стандарты GS, XG, XS, DLS, которые расширили возможности как непосредственно управления по MIDI, так и по улучшению качества звучания и увеличения набора инструментов. Но, развитие сэмплерных технологий, а также появление виртуальных программных инструментов VSTi и DXi поставило над всеми этими попытками жирную точку. И этот факт показал, что стандартизации такого глобального уровня в индустрии быть не может.
- Sequential Circuits - 01
- Big Briar - 02
- Octave / Plateau - 03
- Moog - 04
- Passport Designs - 05
- Lexicon - 06
- Kurzweil - 07
- Fender - 08
- Gulbransen - 09
- Delta Labs - 0A
- Sound Comp. - 0B
- General Electro - 0C
- Techmar - 0D
- Matthews Research - 0E
- Oberheim -10
- PAIA - 11
- Simmons - 12
- DigiDesign -13
- Fairlight -14
- Peavey - 1B
- JL Cooper - 15
- Lowery - 16
- Lin - 17
- Emu - 18
- Bon Tempi - 20
- S.I.E.L. - 21
- SyntheAxe - 23
- Hohner - 24
- Crumar - 25
- Solton - 26
- Jellinghaus Ms - 27
- CTS - 28
- PPG - 29
- Elka - 2F
- Cheetah - 36
- Kawai - 40
- Roland - 41
- Korg - 42
- Yamaha - 43
- Casio - 44
- Akai - 45
Выводы о MIDI
Стандарт MIDI выживает за счет своей распространенности. При этом со временем мы получили огромное количество надстроек над ним, часть из которых уже превратилось в историю.
Синхронизация
Представьте себе оркестр без дирижера. На самом деле достаточно трудно. Если переводить на компьютерный язык, то дирижер дает визуальный сигнал синхронизации, соответствующий темпу. Хотя, по сути, он несет на себе еще ряд функций, но эта - одна из основных. Современная работа звукорежиссера часто заключается в обеспечении синхронизации в тех случаях, когда речь заходит о коммутации нескольких устройств, среди которых могут быть цифровые и аналоговые магнитофоны, видео-деки, MIDI-устройства, такие как секвенсоры, ритм-машины, рабочие станции, программное обеспечение и т.п. В рамках небольшой проект-студии на базе РС звукорежиссеру необходимо осуществление обеспечения синхронной работы лишь небольшого количества устройств, в число которых обычно входят неспосредственно сам РС, MIDI-интерфейс, видео-дека, внешние эффект-процессоры и, возможно, цифровой микшерный пульт. При этом мы имеем в наличии программные эмуляции большинства мощных эффект-процессоров, огромную базу звуковых MIDI-модулей внутри РС в виде программных VSTi и DXi-инструментов. К тому же сейчас можно говорить о переходе мощных станций нелинейного видеомонтажа на платформу РС, что нам успешно демонстрируют продукты от Adobe, Sony Pictures Digital и Pinnacle. Поэтому необходимость в синхронизации в рамках небольшой проект-студии практически отпадает вообще. Наш "дирижер" сидит внутри компьютера!
Но вместе с тем, звукорежиссер может столкнуться с проблемами синхронизации при работе с менее современным оборудованием (или очень дорогим оборудованием). Поэтому мы сейчас рассмотрим основные принципы реализации синхронизации.
В аналоговой технике реализация синхронизации достаточно трудна и лучший выход, который нашли в период расцвета этих технологий - это использование для записи многодорожечных магнитофонов, но их возможностей не хватало, и возникало ряд проблем, таких как задержки в аналоговых трактах обработки, рассинхронизации за счет расхождения скоростей в двух и более подключенных устройствах записи-воспроизведения, небольших изменениях этих скоростей и т.п. Во многом и поэтому, мы используем сейчас аналоговую технику по минимуму. Хотя если говорить о синхронизации в тот период, то основные термины и наработки появились благодаря кино- и видеоиндустрии, где звук и изображение должны идти слаженно вместе.
В кино все решалось достаточно просто. Хотя самое тривиальное решение очевидно - поместить звуковую дорожку на кинопленку, но к этому пришли несколько позже. Изначально для звука и изображения использовались две ленты.
Нужно отметить, что проблема их синхронного воспроизведения решалась с помощью использования перфорационной дорожки на магнитной ленте, которая соответствовала такой же на кинопленке. В результате мы имели вариант физической синхронизации. Система приводилась в движение с помощью одного двигателя, что позволяло автоматизировать процесс. Хотя были и варианты с двумя двигателями отдельно для звука и для кинопленки, скорости вращения которых необходимо было синхронизировать, но проблема в данном случае решалась также просто, поскольку эти скорости находились в прямой зависимости от частоты переменного тока.
С приходом видеоиндустрии и развитием телевидения ситуация кардинально изменилась. Появилась необходимость в протоколах синхронизации, и они были созданы. В 1971 году Обществом Кино- и Видеоинженеров (Society of Motion Picture and Television Engineers, SMPTE) США был принят стандарт SMPTE (читается как "симпти"). Через некоторое время он был поддержан со стороны Европейского Союза Вещателей (European Broadcast Union, EBU) и в результате получившегося слияния принял статус мирового протокола. Поскольку SMPTE был разработан для видеомагнитофонов, то он нес в себе временную информацию, содержащую больше временную информацию, а именно часы (0… 23), минуты (0… 60), секунды (0… 60), кадры (0… 24, 25 или 30). Эта информация называется временным или тайм-кодом.
Хотя стандарт был и мировым, он расходился по синхронизации кадров. Если в кино все понятно - 24 кадра в секунду, то в видео - нет. Европейские стандарты используют системы PAL и SECAM, которые предусматривают частоту смены 25 кадров секунду, а американский вариант NTSC - 30. Эти стандарты имеют прямое отношение к разнице энергосистем и частотам переменного тока, применяемых на континентах. У нас используется 50Гц, в Америке - 60 Гц. Со временем у стандарта NTSC появились проблемы в реализации цветного вещания, поскольку реальная частота смены кадров при нем соотвествовала 29,97 кадров в секунду. В случае использования 30 накапливалось расхождение между кодом синхронизации и изображением с появлением "лишних" 128 кадров за один час. В результате было решено убирать некоторые кадры (создавать "выпадающие кадры" или "drop frames") для того чтобы минимизировать ошибку. Таким образом, мы сейчас имеем стандарты SMPTE, описанные в таблице:
С упомянутым ранее MIDI Time Code или MTC работать намного удобнее. Часто можно встретить определение такого плана, что "MTC - это тот же SMPTE, только передаваемый по MIDI-кабелям". Это не совсем верно, поскольку с помощью MТС можно передавать вообще любые цифровые данные, и SMPTE являются не более чем, как частным случаем. Например, в MTC мы можем вкладывать инормацию по темпу, обычным временным отсчетам, кадрам для различных систем, в том числе и предусмотренным SMPTE. Но SMPTE удобен тем, что он подразумевает реальный устоявшийся стандарт. Если посмотреть внимательно на приведенную таблицу, то можно заметить, что ошибка сложившаяся с частотой смены кадров в NTSC никак не отразилась в звуковой индустрии. Этот стандарт до сих пор можно встретить в большинстве современного программного и аппаратного обеспечения. То есть, важно отметить, что это просто принятый стандарт - в изобретениях новых пока нет необходимости.
Современная синхронизация строится на базе иерархической модели, где одно устройство является ведущим (Master) и задает синхро-сигнал, а остальные - ведомыми (Slave), подчиняются этому сигналу. То есть реальная задача синхронизации - это обеспечение общего таймера для совокупности студийных устройств. Ведущий с ведомым обчно коммутриется по стандартным протоколам Word Clock, MTC, Super Clock и Sony 9-pin.
Еще следует отметить стандарт MIDI Clock, с помощью которого внешним секвенсорам и ритм-машинам сообщается темп по типу метронома.
Program Change (pp — номер тембра или инструмента)
Служит для смены инструмента в канале. Параметр задает номер инструмента (0–127) в текущем выбранном банке. Стандартом General MIDI определены 128 основных мелодических и 47 ударных инструментов, собранных в нулевом банке; устройства с расширенным набором инструментов имеют дополнительные банки, а также могут иметь частично измененный основной набор.
Стандартные мелодические инструменты General MIDI разделены на 16 групп по 8 инструментов в каждой группе:
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 |
Стандартные ударные инструменты General MIDI доступны в канале 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 |
Как воспроизвести MIDI файл
MIDI-файлы могут быть открыты с помощью проигрывателя Windows Media, QuickTime, Winamp, VLC, WildMidi, TiMidity++, WildMIDI, Synthesia, MuseScore, Amarok, от Apple Logic Pro, и очень вероятно, некоторых других приложений. Вы также можете воспроизводить MIDI-файлы онлайн с помощью онлайн-секвенсора.
Некоторые из этих программ также открывают MIDI-файлы в Linux, особенно TiMidity++, WildMIDI и Amarok.
Midi Sheet Music – это портативная программа (вам не нужно её устанавливать), которая также может воспроизводить MIDI-файлы и даже показывает ноты в реальном времени во время воспроизведения звука. Она также позволяет конвертировать MIDI-файл в ноты, которые вы можете распечатать или сохранить на своем компьютере в формате PDF или в виде нескольких файлов изображений PNG.
Sweet MIDI Player – это MIDI-плеер для iOS (iPhone и iPad), но он воспроизводит только 75 процентов от файла; Вы можете заплатить за полную функциональность. Пользователи Android могут открывать MID-файлы с помощью приложения Fun Fun MIDI Player или MIDI Voyager Karaoke Player.
Если вы обнаружите, что приложение на вашем компьютере пытается открыть файл MIDI, но это неправильное приложение, или если вы предпочитаете, чтобы другая установленная программа открывала файлы MIDI, ознакомьтесь с руководством по изменению программы по умолчанию для конкретного расширения файла.
General MIDI (GM)
Первый общий стандарт был предложен в 1991 году ассоциацией производителей MIDI-оборудования. Он объединил изделия разношерстных производителей под именем General MIDI (System) Level 1. Сейчас его поддерживает абсолютное большинство моделей электронных синтезаторов, звуковых карт и клавиатур. Так как требования этого стандарта уже давно морально устарели, то, обычно, современные электронные инструменты поддерживают его лишь для базовой совместимости.
GM-файлы звучат на различных моделях существенно по разному. Дело в том, что определяя количество и состав мелодических инструментов не были точно описаны тембровые характеристики GM-инструментов. Поэтому, если для легкой музыки с традиционным составом оркестра звучание более-менее схоже, то, если задействуются инструменты из таких групп, как Synth Pad, Sound Effects и некоторых других, конечный результат может быть обескураживающим.
Читайте также: