Формати представлення музики і звуку

Формати представлення музики і звуку дають можливість подати на вхід системи стандартні музичні об’єкти і провести дослідження її ефективності. Найпошириніше використовуються два формати: Microsoft RIFF (Resource Interchange File Format - формат файлів передачі ресурсів) Wave (.WAV) і SMF (Standard MIDI File - стандартний MIDI-Файл) (.MID). Перший містить оцифрований звук (моно/стерео, 8/16 розрядів, з різною частотою дискретизації), другий - партитуру для MIDI-інструментів (ноти, команди зміни інструментів, керування тощо). Тому WAV-Файл на всіх картах, що підтримують потрібний формат, розрядність і частоту дискретизації звучить однаково (з точністю до якості перетворення і підсилювача), а MID-Файл у загальному випадку по-різному.

WAVE-форма використовується для цифрових аудіодисків, а MIDI - в електронних музичних інструментах.

Фізичні характеристики MIDI:

- спосіб передачі - струмова петля (5 мА);

- передача даних - побайтно, у послідовному стартостопному коді (8 біт даних, один стоповий);

- швидкість - 31250 біт/с.

Потік даних, що передається по MIDI, складається з повідомлень (подій): натискання/відпускання клавіш, зміна положень регуляторів ( MIDI-контролерів), зміна режимів роботи, синхронізація тощо. Можна сказати, що по MIDI передається партитура музичного твору, однак є й спеціальні види повідомлень System Exclusive (SysEx) у які може міститися будь-яка інформація для інструмента наприклад, оцифрований звук для завантаження в ОЗП, партитура ритм-блоку тощо. Більшість повідомлень містить у собі номер каналу (1..16) це найчастіше умовний номер інструмента в мережі, для якого вони призначені.

У повідомленнях про натискання/відпусканнях клавіш передається номер ноти - число в діапазоні 0..127, що визначає умовний номер півтону ноти

З MIDI-форматом працюють програми-секвенсори (sequencer), аналогічні апаратним MIDI-секвенсорам. У їх функції входить запис і відтворення MIDI-партитур, відображення їх у різних форматах, різне редагування як нот (транспонування, квантування, зсув фрагмента), так і керуючих подій: зміни інструментів, генерації серій значень контролерів, що імітують рух регуляторів, вставки SysEx і т.п. Секвенсори підтримують три основних формати відображення: нотний, часово-висотний, подійний.

У форматі RIFF файли діляться на блоки даних (Chunks), що містять кількість байтів, кратне 4. Кожний блок починається з 4-байтового ідентифікатора, за яким йде 4 байти з довжиною блоку або файлу. При необхідності блок доповнюється нульовими байтами, але розмір вказується без обліку цих байтів.

Будь-який MIDI-синтезатор може відтворювати звучання більше 150 різних музичних інструментів, що мають свої номери назви. Програвання йде одночасно на 16 каналах (треках) - 16 інструментах (або, точніше, в 16 оркестрових групах, що складаються з однакових інструментів). На кожному каналі одночасно може звучати кілька голосів - нот, що витягаються на цьому інструменті (їх може бути до 32