Парчето семпли позволява на едно устройство MIDI да използва файла Wave като сбирка от семпли.
Парчето семпли има следната структура.
Описание на поредицата от байтове | Дължина в байтове | Започва с байт (в парчето) | Стойност |
идентификация на парчето | 4 | 0x00 | Поредицата от ASCII символи "smpl" |
размер | 4 | 0x04 | Размера на парчето минус 8 (минус "идентификацията на парчето" и "размера") |
производител | 4 | 0x08 | Кода на производителя със сдружението MIDI Manufacturers Association (виж Ексклузивно Съобщение за Системата в MIDI). Ако стойността е нула, тогава производителят не е определен. Първият байт на четирите байта определя броя на байтовете в кода на производителя, които трябва да се използват (1 или 3). Кода за Roland например е 0x01000041 (0x41), а кода за Microsoft е 0x03000041 (0x00 0x00 0x41) |
продукт | 4 | 0x0C | Идентификация на продукта / модела на устройството, която е специфична за производителя. Ако стойността е нула, токава продукта не е определен |
дължина на пробата | 4 | 0x10 | Дължината на един от семплите в наносекунди. При пробната честота 44.1 KHz например, дължината на пробата (времето между две проби) е (1 / 44100) * 1,000,000,000 = 22675 наносекунди = 0x00005893 |
основна нота в MIDI | 4 | 0x14 | Нотата, която ще бъде изсвирена в MIDI, ако тези семпли се изсвирят без да се транспонират. Стойностите са между 0 и 127 (виж Съобщение Свири Нотата в MIDI) |
дял на транспониране в MIDI | 4 | 0x18 | Частта от един полутон нагоре от определената нота. Половината от един полутон например е 50 стотни и ще бъде записана с 0x80 |
SMPTE формат | 4 | 0x1C | Формата на SMPTE. Позволените стойности са 0, 24, 25, 29 и 30 (виж Времева резолюция (на файл MIDI)) |
SMPTE отместване | 4 | 0x20 | Определя отместването във времето, ако семплите трябва да се изсвирят по-късно, а не веднага. Първият байт на тази стойност определя броя на часовете и е между -23 и 23. Вторият байт е броя на минутите и е между 0 и 59. Третият байт е броя на секундите (от 0 до 59). Последният байт е броя на кадрите и е между 0 и броя на кадрите, определен от формата SMPTE. Ако формата SMPTE например е 24, тогава броя на кадрите е между 0 и 23 |
брой на лупинги от семпли | 4 | 0x24 | Определя броя на лупингите от семпли, които се съдържат в данните на това парче |
данни за семплите | 4 | 0x28 | Броя на байтовете от данни, които са специфични за устройството и които са след лупингите от семпли. Ако няма такива данни, броя на тези байтове е нула |
лупинги от семпли | различни | 0x2C | Лупингите от семпли |
специфични за устройството данни | различни | различни | Данни за устройството, които не са задължителни |
Един лупинг от семпли има следната структура.
Описание на поредицата от байтове | Дължина в байтове | Започва с байт в под-парчето | Стойност |
идентификация | 4 | 0x00 | Уникална идентификация на лупинга, която може да е знак за встъпване (виж Парче знак за встъпване (във файл Wave)) |
вид | 4 | 0x04 | Вида на лупинга. Ако вида е 0, лупинга се свири винаги напред. Ако стойността е 1, лупинга се свири веднъж напред, веднъж назад и т.н. Ако стойността е 2, лупинга се свири назад. Стойностите от 3 до 31 са запазени за някакви бъдещи стандарти. Стойностите от 32 нагоре са специфични за устройствата / производителите |
започва | 4 | 0x08 | Началото на лупинга в семпли |
завършва | 4 | 0x0C | Края на лупинга в семпли. Последната проба също се изсвирва |
част | 4 | 0x10 | Резолюцията за фината настройка на лупинга. Стойността нула означава сегашната резолюция. Стойността 50 стотни (0x80) е ½ проба |
брой повторения на лупинга | 4 | 0x14 | Броя на повторенията на лупинга. Стойността нула означава безкрайно. В едно устройство MIDI това може да означава, че една нота ще се свири / държи безкрайно |
Виж също:
Формат на файл Wave
Добави нов коментар