Jump to content

MIDI-управление машиной

MIDI Machine Control , или MMC, подмножество спецификации MIDI , предоставляет специальные команды для управления записывающим оборудованием, например, многодорожечными рекордерами. Сообщения MMC можно отправлять по стандартному MIDI-кабелю для дистанционного управления такими функциями, как воспроизведение, перемотка вперед, перемотка назад, остановка, пауза и запись. Это « системные эксклюзивные » (SysEx) сообщения, а именно сообщения Universal SysEx в реальном времени.

Универсальный MIDI-формат сообщений SysEx в реальном времени

[ редактировать ]

MIDI включает в себя эксклюзивные сообщения системы, которые являются расширениями формата MIDI, реализованными производителями MIDI. Некоторые из расширений, «Универсальные», представляют собой набор одинаковых функций, которые разные производители могут реализовать по-разному в деталях. Некоторые из них не в реальном времени , без точного времени доставки. Другие работают в режиме реального времени, включая MMC, поэтому они доставляются более надежно, когда это ожидается. Сообщения SysEx начинаются с ( шестнадцатеричного ) F0 и заканчиваются F7. Сообщения Universal Real Time SysEx начинаются с F0, за которым следует 7F, затем включаются другие поля перед завершающей F7.

Ниже показан формат сообщения Universal Real Time SysEx (все числа шестнадцатеричные):

F0 7F <Device-ID> <Sub-ID#1> [<Sub-ID#2> [<parameters>]] F7

где Device-ID является:

MMC device's ID#; value 00-7F (7F = all devices); AKA "channel number"

и Sub-ID#1: является одним из следующих значений. Значения, выделенные жирным шрифтом, относятся к MIDI Machine Control:

01 = Полная форма MTC
02 = Управление MIDI-шоу
03 = Информация об обозначениях
04 = Управление устройством
05 = Сигнал MTC в реальном времени
06 = MIDI-команда управления машиной
07 = Ответ управления MIDI-машиной
08 = Перенастройка одной ноты

Формат сообщения MMC

[ редактировать ]

Сообщение MMC представляет собой либо команду MMC (Sub-ID#1=06), либо ответ MMC (Sub-ID#1=07). Оно форматируется как сообщение SysEx (все числа шестнадцатеричные):

F0 7F <Device-ID> <06|07> [<Sub-ID#2> [<parameters>]] F7
Device-ID: MMC device's ID#; value 00-7F (7F = all devices); AKA "channel number"
Sub-ID#1: 06 = command
  Sub-ID#2:
  01 Stop
  02 Play
  03 Deferred Play (play after no longer busy)
  04 Fast Forward
  05 Rewind
  06 Record Strobe (AKA [[Punch in/out|Punch In]])
  07 Record Exit (AKA [[Punch out (music)|Punch out]])
  08 Record Pause
  09 Pause (pause playback)
  0A Eject (disengage media container from MMC device)
  0B Chase
  0D MMC Reset (to default/startup state)
  40 Write (AKA Record Ready, AKA Arm Tracks)
    parameters: <length1> 4F <length2> <track-bitmap-bytes>
  44 Goto (AKA Locate)
    parameters: <length>=06 01 <hours> <minutes> <seconds> <frames> <subframes>
  47 Shuttle
    parameters: <length>=03 <sh> <sm> <sl> (MIDI Standard Speed codes)
Sub-ID#1: 07 = response
  Sub-ID#2: response state
  parameters: values detailing response state

Команды ММС

[ редактировать ]

Команды MMC — это либо транспортные сообщения MMC, содержащие один байт , представляющий команду, либо другие типы, содержащие байт команды, за которым следуют байты параметров. Некоторые параметры — это длины наборов байтов в сообщении, некоторые параметры — это константы, связанные с командой, другие параметры — это значения переменных данных, определяющие выполнение команды.

Запись готова

[ редактировать ]

Сообщение «Record Ready (Arm Tracks)» активирует запись треков. Форматируется (все числа шестнадцатеричные):

F0 7F <Device-ID> 06 40 <length1> 4F <length2> <track-bitmap> F7
length1: number of bytes between length1 and F7
length2: number of bytes in the track bitmap
track-bitmap: Each track is assigned a bit in the track bitmap.

Чтобы установить дорожку, вы должны знать как байт, в котором находится бит дорожки, так и бит, соответствующий этой дорожке. Обратите внимание, что каждый байт может содержать только 7 дорожек.

Track 1: byte 1 + 0x20
Track 2: byte 1 + 0x40
Track 3: byte 2 + 0x01
Track 4: byte 2 + 0x02
Track 5: byte 2 + 0x04
Track 6: byte 2 + 0x08
Track 7: byte 2 + 0x10
Track 8: byte 2 + 0x20
Track 9: byte 2 + 0x40
Track 10: byte 3 + 0x01
and so on.

Перейти/Найти

[ редактировать ]

Сообщение Goto (также известное как Locate) указывает на запись или воспроизведение по времени SMPTE (определенный час, минута, секунда, номер кадра SMPTE и код подкадра). Форматируется (все числа шестнадцатеричные):

F0 7F <Device-ID> 06 44 <length>=06 01 <hr> <mn> <sc> <fr> <ff> F7
Sub-ID#2 =44: LOCATE command
length: 06 Data byte count (always six bytes)
subcommand: 01 TARGET
hr: hours and type (as with MTC Fullframe); values 0-17 (= 0-23 decimal)
mn: minutes; values 0-3B (= 0-59 decimal)
sc: seconds; values 0-3B (= 0-59 decimal)
fr: frames; values 0-1D (= 0-29 decimal)
ff: sub-frames / fractional frames (leave at zero if un-sure); values 0-63 (= 0-99 decimal)

(некоторые производители кодируют значение подкадра по-разному при разной частоте кадров, чтобы указать подкадр 0)

Трансфер

[ редактировать ]

Как прямое, так и обратное переключение используют одно и то же сообщение MMC; направление кодируется как значение знака. Форматируется (все числа шестнадцатеричные):

F0 7F <Device0ID> 06 47 <length=03> <sh> <sm> <sl> F7
Note: sh, sm and sl are defined as Standard Speed in the MIDI 1.0 Recommended Practice RP-013.
sh = Nominal Integer part of speed value: 0 g sss ppp
  g = sign (1 = reverse)
  sss = shift left count (see below)
  ppp = most significant bits of integer multiple of play-speed
sm = MSB of nominal fractional part of speed value: 0 qqqqqqq
sl = LSB of nominal fractional part of speed value: 0 rrrrrrr
Speed values per shift left count:
BINARY REPRESENTATION USABLE RANGES (DECIMAL)
Integer multiple Fractional part Integer Fractional
sss of play speed of play speed range resolution
000 ppp - qqqqqqqrrrrrrr 0-7 1/16384
001 pppq - qqqqqqrrrrrrr 0-15 1/8192
010 pppqq - qqqqqrrrrrrr 0-31 1/4096
011 pppqqq - qqqqrrrrrrr 0-63 1/2048
100 pppqqqq - qqqrrrrrrr 0-127 1/1024
101 pppqqqqq - qqrrrrrrr 0-255 1/512
110 pppqqqqqq - qrrrrrrr 0-511 1/256
111 pppqqqqqqq - rrrrrrr 0-1023 1/128
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: d453ab3f1e2d12a15b32993a72aa1d81__1672095780
URL1:https://arc.ask3.ru/arc/aa/d4/81/d453ab3f1e2d12a15b32993a72aa1d81.html
Заголовок, (Title) документа по адресу, URL1:
MIDI Machine Control - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)