Delen via


Tijdsinformatie

Tijdinformatie voor een MIDI-gebeurtenis wordt opgeslagen in het dwDeltaTime veld van de MIDIEVENT structuur. Tijd wordt gegeven in tikken, zoals gedefinieerd in de Standard MIDI Files 1.0 specificatie. De tijdsduur van een tik wordt bepaald door de tijdsnotatie en mogelijk het tempo dat aan de stroom is verbonden. Zie MIDI Streamsvoor meer informatie over streams.

Een tik wordt uitgedrukt als microseconden per kwartnoot of als tikken van SMPTE-tijd (Society of Motion Picture and Television Engineers). Toepassingen die MIDI-berichten afzonderlijk verzenden of onbewerkte MIDI-berichten gebruiken, benutten kwartnoot tijd en tempo-informatie om de duur van een tik te bepalen. Toepassingen die MIDI-berichten vooraf verwerken, kunnen de verstreken tijd opslaan als het aantal gebruikte SMPTE-eenheden.

De kwartnoottijd wordt aangegeven met een nul in het hoog-woordbit (bit 15) van het tijdverdelingswoord. De rest van het woord bevat de tikken per kwartnoot. Een tempo dat gekoppeld is aan een stroom MIDI-gegevens wordt gehouden in eenheden (microseconden per kwartnoot) die consistent zijn met de specificatie Standard MIDI Files 1.0. Bijvoorbeeld, een kwartnoot in 4/4 maat die gebruikmaakt van een tempo van 500.000 microseconden per kwartnoot speelt met een snelheid van 120 slagen per minuut.

Indelingen voor SMPTE-tijdverdeling geven de lengte van een maatstreepje volledig op zonder dat er tempogegevens nodig zijn. Bij het gebruik van SMPTE-tijdnotaties kunnen MIDI-reeksen worden gesynchroniseerd met andere SMPTE-gebeurtenissen, zoals video of gestreepte audio. SMPTE-tijd wordt aangegeven met een 1 in de hoogste bit (bit 15) van het tijdverdelingswoord. In de rest van de meest significante byte wordt de SMPTE-indeling aangegeven in termen van negatieve waarden. De ondersteunde SMPTE-indelingen en de bijbehorende waarden (tussen haakjes) zijn 24 (-24), 25 (-25), 30 (-30) en 30 drop (-29). De lage byte van het tijdverdelingswoord geeft het aantal tikken per SMPTE-frame aan.