Времева резолюция (на файл MIDI)

Времевата резолюция на файловете MIDI, също така наречена "резолюция в MIDI", определя дължината от време на пулсовете в MIDI и се съдържа от тринадесетия и четиринадесетия байт на хедъра на файла MIDI.

Тези два байта (16 бита) имат две възможни форми. Ако най-горният от 16-те бита е 0, тогава времевата резолюция е в "пулсове в такта" (или "пулсове в четвърт нота"). Ако най-горният бит е 1, тогава времевата резолюция е в "кадри в секунда".

Пулсове в четвърт нота (PPQ, от англ., "pulses per quarter note")

Когато най-горният бит на времевата резолюция е 0, тогава резолюцията е в пулсове в такт. Останалите 15 бита определят колко пулса MIDI има в един такт (в една четвърт нота). Ако например тези 15 бита съдържат стойността 60, тогава времевата резолюция е 60 пулса в един такт и дължината на един пулс е

1 пулс = микросекунди в един такт / 60

Стойността "микросекунди в един такт" се определя от събитието в MIDI, което носи мета съобщението определи темпото. Ако такова събитие не съществува, тогава се приема, че стойността е 500000 микросекунди и следователно такта е 120 такта в минута. При примера по-горе, ако времевата резолюция е 60 пулса в един такт и имаме 500000 в един такт, тогава 1 пулс = 500,000 / 60 = 8333.33 микросекунди.

Кадри в секунда

Когато най-горният бит на времевата резолюция е 1, тогава останалите 15 бита трябва да бъдат разделени на две части. Останалите 7 бита на най-горния байт определят броя на кадрите в секунда и могат да бъдат 24, 25, 29.97 (записано като 29) или 30. 8-те бита на долния байт определят броя на пулсовете в един кадър. Така, ако например имаме 24 кадъра в секунда и 100 пулса в един кадър, понеже в една секунда има 1000000 микросекунди, един пулс е

1 пулс = 1000000 / (24 * 100) = 416.66 микросекунди

Така, ако най-горният бит на времевата резолюция е 1, тогава дължината на един пулс е строго определена от двата байта на времевата резолюция. Горният байт определя броя на кадрите в секунда и долният байт определя броя на пулсовете в кадъра, което е достатъчно да се определи точната дължина на пулса. Това не е така когато най-горният бит на времевата резолюция е 0 и резолюцията е в пулсове в четвърт нота. Времевата резолюция тогава определя пулсовете в четвърт нотата, но нищо не определя дължината на една четвърт нота. Едно отделно събитие в MIDI трябва да бъде използвано за да се определи дължината на четвърт нотата, или пък това трябва да се остави да бъде определено от самото устройство MIDI (120 такта в минута по принцип).

Виж също:
Протокол Musical Instrument Digital Interface (MIDI)

Добави нов коментар

Filtered HTML

  • Freelinking helps you easily create HTML links. Links take the form of [[indicator:target|Title]]. By default (no indicator): Click to view a local node.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.