Script syntaxe
Un article de XMIX.
(Différences entre les versions)
Version du 3 mai 2007 à 23:12 Yoann (Discuter | contribs) (→<instruction> : objet type Channel) ← Différence précédente |
Version actuelle Yoann (Discuter | contribs) |
||
Ligne 1: | Ligne 1: | ||
== Général == | == Général == | ||
- | Un instruction est composé de la manière suivante | + | Une instruction est une commande permettant d'utiliser les ressources de l'[[AudioEngine]]. Elle est exécutée au sein d'une session. Une instruction est composée de la manière suivante: |
'''<time_code>:<variable>:<instruction>[:<param> [:<parma2> ... :<param n>]]''' | '''<time_code>:<variable>:<instruction>[:<param> [:<parma2> ... :<param n>]]''' | ||
Ligne 12: | Ligne 12: | ||
'''*<n>''' : Time code relatif temps réel. L'instruction sera déclanchée n miliseconde(s) après son interprétation. | '''*<n>''' : Time code relatif temps réel. L'instruction sera déclanchée n miliseconde(s) après son interprétation. | ||
(Ex: *1000:A:CREATESRTEAM) | (Ex: *1000:A:CREATESRTEAM) | ||
+ | Petit raccourci : *: -> immédiat et equivalent à *0 | ||
'''+<n>''' : Time code relatif incrémental. Cette instruction sera exécutée n miliseconde(s) après la dernière | '''+<n>''' : Time code relatif incrémental. Cette instruction sera exécutée n miliseconde(s) après la dernière | ||
- | instruction de type relatif incrémental ou de type relatif temps réel.(Ex: +500:A:CREATECHANNEL) | + | instruction de type relatif incrémental ou de type relatif temps réel.(Ex: +500:A:CREATECHANNEL) |
- | '''CREATECHANNEL''' : Créer un objet de type stream | + | |
- | *:<NomAudioGroup>:CREATECHANNEL:<NomCanal> petit raccourci : *: -> immédiat et equivalent à *0 | + | |
== <variable> == | == <variable> == | ||
Ligne 22: | Ligne 21: | ||
'''_SYS_''' : Correspondant aux instruction qui porte sur le système (Ex: *:_SYS_:EXIT) | '''_SYS_''' : Correspondant aux instruction qui porte sur le système (Ex: *:_SYS_:EXIT) | ||
'''<variable_path>''' : Correspond à un chemin absolu ou relatif pour accéder à un objet. | '''<variable_path>''' : Correspond à un chemin absolu ou relatif pour accéder à un objet. | ||
- | exemple: /Session1/AG1/Channel1 ou AG1/Channel1 | + | exemple: /Session1/AG1/Channel1 ou AG1/Channel1. |
+ | |||
+ | |||
+ | == <instruction> : objet _SYS_ == | ||
+ | '''GETFILEID''' : Interroge le TAudioFileMgr pour obtenir l'ID correspondant à une source audio définit dans une URL. | ||
+ | exemple: *:_SYS_:GETFILEID:@<alias>:"file://C:/MP3_SAMPLE/MyFile1.mp3" | ||
+ | ou *:_SYS_:GETFILEID:@<alias>:"xmix://Le%20%plus%20fou%20des%20MP3" | ||
+ | '''DRAWHEAP''' : Dessine l'arbre des variables actuellement définit | ||
+ | '''DOSTDUPDATE''' : Met à jour les informations "standard" des variables | ||
+ | '''DOFSTUPDATE''' : Met à jour les informations "fast" des variables | ||
== <instruction> : objet type Session == | == <instruction> : objet type Session == | ||
Ligne 28: | Ligne 36: | ||
*:<session>:CREATEAUDIOGROUP:<NomAudioGroup> | *:<session>:CREATEAUDIOGROUP:<NomAudioGroup> | ||
'''FREE:<Obj>''' : Suprime un objet et sa décendance | '''FREE:<Obj>''' : Suprime un objet et sa décendance | ||
+ | '''NOP''' : Ne fait rien | ||
== <instruction> : objet type AudioGroup == | == <instruction> : objet type AudioGroup == | ||
Ligne 35: | Ligne 44: | ||
'''SETVOL:<vol>''' : Modifie le volume de l'objet (0-255) | '''SETVOL:<vol>''' : Modifie le volume de l'objet (0-255) | ||
'''SETPAN:<pan>''' : Modifie la répartition du son entre gauche/droite en stéréo (0 à droite, 255 à gauche) | '''SETPAN:<pan>''' : Modifie la répartition du son entre gauche/droite en stéréo (0 à droite, 255 à gauche) | ||
- | '''SETMUTE:[ON|OFF] : Active le mode mute | + | '''SETMUTE:[ON|OFF]''' : Active le mode mute |
== <instruction> : objet type Channel == | == <instruction> : objet type Channel == | ||
- | '''SETFILEID:<ID>''' : Affecte un fichier représenté par <ID> à l'objet de type stream | + | '''SETFILEID:<ID>''' : Affecte une source audio représenté par <ID> (un TAudioFile) au canal |
*:<NomCanal>:SETFILEID:<ID> | *:<NomCanal>:SETFILEID:<ID> | ||
'''PLAY''' : Commence la lecture | '''PLAY''' : Commence la lecture | ||
Ligne 51: | Ligne 60: | ||
'''SETPAN:<pan>''' : Modifie la répartition du son entre gauche/droite en stéréo (0 à droite, 255 à gauche) | '''SETPAN:<pan>''' : Modifie la répartition du son entre gauche/droite en stéréo (0 à droite, 255 à gauche) | ||
- | '''SETMONITOR:<type>:[ON|OFF]''' : Active le monitoring de la variable pour le client puisse accéder rapidement au données semi/temps réel | + | '''MONITOR:[OFF|STD|FAST]''' : Active le monitoring de la variable pour le client puisse accéder rapidement au données semi/temps réel |
- | <type> = ( 'FFT', 'POS', 'ALL', 'STD') | + | |
To be continued... | To be continued... |
Version actuelle
Sommaire |
[modifier]
Général
Une instruction est une commande permettant d'utiliser les ressources de l'AudioEngine. Elle est exécutée au sein d'une session. Une instruction est composée de la manière suivante:
<time_code>:<variable>:<instruction>[:<param> [:<parma2> ... :<param n>]]
tous doit tenir sur un ligne (les retours chariots délimité chaque instruction).
[modifier]
<time_code>
Il est existe de trois types différents :
<n> : Time code absolu, l'instruction sera déclanchée n miliseconde(s) après le démarrage du player. (Ex: 12000:A:CREATECHANNEL) *<n> : Time code relatif temps réel. L'instruction sera déclanchée n miliseconde(s) après son interprétation. (Ex: *1000:A:CREATESRTEAM) Petit raccourci : *: -> immédiat et equivalent à *0 +<n> : Time code relatif incrémental. Cette instruction sera exécutée n miliseconde(s) après la dernière instruction de type relatif incrémental ou de type relatif temps réel.(Ex: +500:A:CREATECHANNEL)
[modifier]
<variable>
Chemin pour accéder à l'objet:
* : Self (généralement la session) _SYS_ : Correspondant aux instruction qui porte sur le système (Ex: *:_SYS_:EXIT) <variable_path> : Correspond à un chemin absolu ou relatif pour accéder à un objet. exemple: /Session1/AG1/Channel1 ou AG1/Channel1.
[modifier]
<instruction> : objet _SYS_
GETFILEID : Interroge le TAudioFileMgr pour obtenir l'ID correspondant à une source audio définit dans une URL. exemple: *:_SYS_:GETFILEID:@<alias>:"file://C:/MP3_SAMPLE/MyFile1.mp3" ou *:_SYS_:GETFILEID:@<alias>:"xmix://Le%20%plus%20fou%20des%20MP3" DRAWHEAP : Dessine l'arbre des variables actuellement définit DOSTDUPDATE : Met à jour les informations "standard" des variables DOFSTUPDATE : Met à jour les informations "fast" des variables
[modifier]
<instruction> : objet type Session
CREATEAUDIOGROUP : Créer un AudioGroup *:<session>:CREATEAUDIOGROUP:<NomAudioGroup> FREE:<Obj> : Suprime un objet et sa décendance NOP : Ne fait rien
[modifier]
<instruction> : objet type AudioGroup
CREATECHANNEL : Créer un objet de type stream *:<NomAudioGroup>:CREATECHANNEL:<NomCanal> FREE:<Obj> : Suprime un objet et sa décendance SETVOL:<vol> : Modifie le volume de l'objet (0-255) SETPAN:<pan> : Modifie la répartition du son entre gauche/droite en stéréo (0 à droite, 255 à gauche) SETMUTE:[ON|OFF] : Active le mode mute
[modifier]
<instruction> : objet type Channel
SETFILEID:<ID> : Affecte une source audio représenté par <ID> (un TAudioFile) au canal *:<NomCanal>:SETFILEID:<ID> PLAY : Commence la lecture *:<NomCanal>:PLAY PAUSE : Met en pause la lecture *:<NomCanal>:PAUSE STOP : Arrête la lecture *:<NomCanal>:STOP SETPOS:<position> : Deplace le curseur de lecture à la position indiquée. SETVOL:<vol> : Modifie le volume de l'objet (0-255) SETPAN:<pan> : Modifie la répartition du son entre gauche/droite en stéréo (0 à droite, 255 à gauche)
MONITOR:[OFF|STD|FAST] : Active le monitoring de la variable pour le client puisse accéder rapidement au données semi/temps réel
To be continued...