General MIDI: GM1, GM2, GM Lite та сумісність

General MIDI GM — 128 інструментів, MIDI-канали, Program Change та стандартна карта тембрів
General MIDI (GM): стандартизовані тембри, канали, Program Change та правила сумісного відтворення MIDI-файлів на різних пристроях.
Зображення створено за допомогою генеративного ШІ для MIDITAUR. Концепція, композиція та текстове наповнення — MIDITAUR.

Зміст публікації

General MIDI — це не одна таблиця тембрів, а сімейство специфікацій, які роблять відтворення MIDI-файлів передбачуванішим на різних сумісних пристроях. Сьогодні MIDI Association групує під General MIDI три основні специфікації: GM1, GM2 і GM Lite.

Позначення General MIDI
General MIDI стандартизує поведінку сумісних MIDI-систем, зокрема розташування тембрів і частину параметрів відтворення.

GM1: базовий рівень сумісності

GM1 визначає мінімальні вимоги до General MIDI sound generator: стандартне розташування melodic programs, percussion map, використання MIDI channels і базових controllers. Саме завдяки цьому один і той самий Standard MIDI File може відтворюватися з приблизно очікуваними інструментами на різних GM-сумісних пристроях.

Детальний розбір вимог GM1 уже є в окремому матеріалі: General MIDI Level 1: що стандартизує GM1. Повний список 128 melodic programs зручніше дивитися в довіднику GM інструменти: таблиця 128 тембрів General MIDI.

GM Sound Set — це набір тембрів, а не окрема специфікація

У старому source GM Sound Set подано як окремий пункт поряд із GM1/GM2/GM Lite. Сучасна структура MIDI Association формулює це точніше: GM specifications використовують спільний GM Sound Set, який визначає стандартні позиції інструментів і допомагає забезпечувати більш послідовне відтворення на різних General MIDI devices.

Тобто Sound Set — центральна складова сумісності GM, але не четверта незалежна специфікація сімейства.

GM2: розширення General MIDI Level 1

GM2 розширює GM1: додає стандартизовані sound variations, додаткові performance/control parameters і нові MIDI messages. MIDI Association прямо описує General MIDI 2 як group of extensions to General MIDI Level 1.

GM2 зберігає основу GM1, але розширює можливості sound generators. Для вибору додаткових варіантів тембрів використовуються, зокрема, Bank Select разом із Program Change.

GM1 був superseded General MIDI 2 у 1999 році, але це не означає, що GM1 перестав використовуватися. MIDI Association окремо зазначає, що GM1 досі популярний для музики у форматі Standard MIDI File.

GM Lite: зменшені вимоги для обмежених систем

General MIDI Lite створено для обладнання, яке не може підтримувати повний feature set GM1. Специфікація допускає меншу продуктивність там, де це виправдано обмеженнями пристрою — історично це було особливо актуально для mobile applications та компактного обладнання.

Наприклад, GM Lite вимагає 16 simultaneous notes і 16 MIDI channels, але не повний рівень ресурсів, очікуваний від GM1/GM2 sound generators.

Як пов’язані GM1, GM2 і GM Lite

  • GM1 — базовий рівень General MIDI compatibility.
  • GM2 — розширений рівень із додатковими sounds, controls і messages.
  • GM Lite — спрощений профіль для систем із меншими ресурсами.
  • GM Sound Set — стандартизована карта тембрів/звуків, яку використовують GM specifications для передбачуваного playback.

Що з логотипами General MIDI

Логотип — це не окрема General MIDI specification. Він є знаком відповідності, використання якого регулюється окремими правилами MIDI Association. Це важливо відділяти від самого технічного стандарту: продукт може реалізовувати MIDI/GM-функції, а право використовувати офіційний logo залежить від відповідної licensing/certification procedure.

Для сучасного MIDI 2.0 MIDI Association прямо розділяє ці речі: створювати MIDI 2.0 products можна без logo license, тоді як офіційний logo вимагає окремої угоди й self-certification. Для історичних GM logos застосовувалися свої правила відповідності.

Чому GM досі має практичне значення

General MIDI залишається корисним там, де важлива переносимість: навчальні MIDI-файли, accompaniment, karaoke, notation playback, старі hardware modules і великі архіви SMF. GM не гарантує однаковий характер звучання — piano різних synth engines може звучати дуже по-різному — але допомагає гарантувати, що program number означатиме очікувану категорію інструмента.

Саме тому GM варто розуміти як compatibility layer між музичними даними й sound generator, а не як конкретний набір семплів або єдиний “GM soundfont”.

Джерела