Running Status

5-polige DIN MIDI plugZie ook: Note on Note off

Mididata worden serieel verstuurd. Dat betekent dat alle gegevens (ook gegevens die op exact hetzelfde tijdstip horen te zitten) na elkaar worden verzonden. In extreme gevallen kan het betekenen dat je vertragingen krijgt omdat er teveel data ineens door de kabel moeten. Ze gaan er altijd wel allemaal doorheen maar niet tegelijk. Om de mididata stroom te beperken, is Running Status bedacht.

De zin van Running Status wordt duidelijk als je weet hoe mididata precies worden verstuurd. Als voorbeeld het midicommando voor Pitchbend. Als je aan het Pitchbend wiel van je synthesizer draait, wordt er ineens een hele klont mididata verstuurd. Elke stand van het wiel wordt in een midicode doorgegeven (hoewel het wel zo is dat er meer data verstuurd worden als je langzamer aan het wiel draait, bij hele snelle bewegingen gaan er meestal maar een paar waarden door).

Als je het Pitchbend wiel 1 stapje omhoog zet, wordt er dus 1 waarde verstuurd. Dat kan er bijvoorbeeld als volgt uitzien: $10 $00 $ 45. Een Pitchbend commando bestaat uit drie bytes. De eerste byte (statusbyte) bepaalt dat het hier om Pitchbend gaat. In begrijpelijk Nederlands vertaald staat er in die eerste byte $10: Er is Pitchbend op midikanaal 1. De twee volgende bytes zijn valuebytes en geven de waarde aan van de Pitchbendstand.

Als je het wiel ineens helemaal naar boven draait, worden er heel veel waardes verstuurd. Er komt dan dus een hele serie van telkens drie bytes. Voor elke andere waarde wordt een nieuw commando van drie bytes verstuurd. Het is echter overbodig dat die eerste byte steeds wordt herhaald. Daar staat namelijk elke keer precies hetzelfde in. Alleen de valuebytes (waarden) veranderen.

De eerste keer is het natuurlijk nodig dat de statusbyte wordt gegeven, maar daarna weten we het wel. Dan zou het voldoende zijn om alleen de valuebytes nog door te geven. Dat is dan ook precies wat gebeurt met Running Status.

Bij een hele stroom data met dezelfde statusbyte wordt die statusbyte alleen bij het eerste commando gegeven. Daarna wordt hij niet meer verstuurd maar gaan alleen nog de valuebytes door de kabel. Dat blijft zo tot er een andere statusbyte binnenkomt (bijvoorbeeld een note-commando).

Met Running Status zul je zelden direkt te maken hebben. Het is iets wat automatisch wordt afgehandeld door midi-instrumenten en midi-software. Er zijn programma's en mididrivers waarin je Running Status kunt uitschakelen. Dat zal nooit nodig zijn. Als je de keuze hebt, kies dan vooral om wel met Running Status te werken. Het komt er immers op neer dat je alleen die mididata verstuurt die echt nodig zijn.

Het doel van Running Status is dus om de stroom van mididata zo beperkt mogelijk te houden. Om de meest optimale timing te garanderen.

* Met dank aan MOPRO.nl

Donatie

Dit is een gratis site, die al sinds 2003 voortdurend wordt uitgebreid en geactualiseerd. Als jij ook wilt dat dat zo blijft, doe dan een donatie aan Popschool Maastricht >>

QR code https://popschoolmaastricht.nl:443/college_midi_runningstatus.php

Bijgewerkt op: 5 November, 2023