next up previous
Next: Beispiel Up: Die Sprache MC Previous: Eigenschaften von MIDI-Noten in

Berechnungen und Ausdrücke

Jede Eigenschaft der MIDI-Noten, inklusive des Zeitverhaltens und der Trackzuordnung kann über arithmetische Ausdrücke unter Einbeziehung der Tabellenspalten der Ereignisdatei berechnet werden. Dazu ist lediglich der Name der zu berechnenden Eigenschaft gefolgt von dem entsprechenden Ausdruck anzugeben. Die Eigenschaften heißen formal:

track
der SMF-Track
ontime
die Ereignisdauer
offtime
die Zeit bis zum Einsetzen des nächsten Ereignisses desselben Tracks
note
die MIDI-Notennummer
velocity
die MIDI-Anschlsgsstärke
channel
der MIDI-Kanal
program
Die MIDI-Programmnummer

Syntaktisch, in EBNF:

MIDI-Transformation ::= Selektor Ausdruck ;
Selektor ::= track\|ontime\|offtime\| note\| velocity\|channel\|program

Aus der EBNF-Darstellung ist außerdem zu ersehen, daß eine solche Berechnung durch ein Semikolon abzuschließen ist.

In den Ausdrücken werden neben Verweisen auf die Tabellenspalten und konstanten Zahlenwerten die Operationen Addition (+), Subtraktion (-), Multiplikation(*) und Division (/) unterstützt, wobei dei üblichen arithmetischen Vorrangregeln (,,Punktrechnung geht vor Strichrechnung``) gelten. Durch explizite Klammerung () kann diese Vorrangregel überschrieben werden.

Ausdruck ::= Term { Addop Term}
Term ::= Faktor { Mulop Faktor}
Faktor ::= Zahl \| Bezeichner \| ( Ausdruck )
Addop ::= + \| -
Mulop ::= * \| /


next up previous
Next: Beispiel Up: Die Sprache MC Previous: Eigenschaften von MIDI-Noten in

Example user SuSE Linux 6.1
Tue Oct 19 23:47:00 MEST 1999