Script syntaxe

Un article de XMIX.

(Différences entre les versions)
Jump to: navigation, search
Version du 27 avril 2007 à 22:13
Yoann (Discuter | contribs)

← Différence précédente
Version actuelle
Yoann (Discuter | contribs)

Ligne 1: Ligne 1:
-'''<time_code>:<variable>:<instruction>[:<param> [:<parma2> ... :<param n>]]'''+== 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). tous doit tenir sur un ligne (les retours chariots délimité chaque instruction).
- '''<time_code>''' : il est existe de trois types différents :+== <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. '''<n>''' : Time code absolu, l'instruction sera déclanchée n miliseconde(s) après le démarrage du player.
(Ex: 12000:A:CREATECHANNEL) (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. '''*<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)
- petit raccourci : *: -> immédiat et equivalent à *0:+
- '''<variable>''' : il est existe de deux catégories de variables : +== <variable> ==
- '''_SYS_''': Correspondant aux instruction qui porte sur le système (Ex: *:_SYS_:EXIT) +Chemin pour accéder à l'objet:
- '''<variable>''': Correspond à un chemin absolu ou relatif pour accéder à un objet, + '''*''' : Self (généralement la session)
- exemple: /Session1/AG1/Channel1 ou AG1/Channel1 + '''_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.
- '''<instruction>''':+ 
- '''NOP''' : Ne fait rien !+== <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 ==
'''CREATEAUDIOGROUP''' : Créer un AudioGroup '''CREATEAUDIOGROUP''' : Créer un AudioGroup
 + *:<session>:CREATEAUDIOGROUP:<NomAudioGroup>
 + '''FREE:<Obj>''' : Suprime un objet et sa décendance
 + '''NOP''' : Ne fait rien
 +
 +== <instruction> : objet type AudioGroup ==
'''CREATECHANNEL''' : Créer un objet de type stream '''CREATECHANNEL''' : Créer un objet de type stream
- '''SETFILEID:<ID>''' : Affecte un fichier représenté par <ID> à l'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
 + 
 +== <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 '''PLAY''' : Commence la lecture
 + *:<NomCanal>:PLAY
'''PAUSE''' : Met en pause la lecture '''PAUSE''' : Met en pause la lecture
 + *:<NomCanal>:PAUSE
'''STOP''' : Arrête la lecture '''STOP''' : Arrête la lecture
 + *:<NomCanal>:STOP
'''SETPOS:<position>''' : Deplace le curseur de lecture à la position indiquée. '''SETPOS:<position>''' : Deplace le curseur de lecture à la position indiquée.
'''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)
 +
 + '''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... To be continued...

Version actuelle

Sommaire

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).

<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)

<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.


<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

      CREATEAUDIOGROUP  : Créer un AudioGroup
                                *:<session>:CREATEAUDIOGROUP:<NomAudioGroup>
      FREE:<Obj>        : Suprime un objet et sa décendance
      NOP               : Ne fait rien

<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

<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...