Script syntaxe

Un article de XMIX.

(Différences entre les versions)
Jump to: navigation, search
Version du 27 avril 2007 à 21:37
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> ==
- '''<n>''' : Time code absolu, l'instruction sera déclanchée n miliseconde(s) après le démarrage du player. +Il est existe de trois types différents :
- (Ex: 12000:A:CREATESRTEAM) + '''<n>''' : Time code absolu, l'instruction sera déclanchée n miliseconde(s) après le démarrage du player.
- '''*<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: 12000:A:CREATECHANNEL)
- '''+<n>''' : Time code relatif incrémental. Cette instruction sera exécutée n miliseconde(s) après la dernière + '''*<n>''' : Time code relatif temps réel. L'instruction sera déclanchée n miliseconde(s) après son interprétation.
- instruction de type relatif incrémental ou de type relatif temps réel.(Ex: +500:A:CREATESRTEAM) + (Ex: *1000:A:CREATESRTEAM)
- petit raccourci : *: -> immédiat et equivalent à *0:+ 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
- '''<variable>''' : il est existe de deux catégories de variables : +== <instruction> : objet type AudioGroup ==
- '''_SYS_''': Correspondant aux instruction qui porte sur le système (Ex: *:_SYS_:EXIT) + '''CREATECHANNEL''' : Créer un objet de type stream
- '''<variable>''': Correspond à un chemin absolu ou relatif pour accéder à un objet, exemple: /Session1/AG1/Channel1 ou AG1/Channel1 + *:<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>''':+== <instruction> : objet type Channel ==
- '''NOP''' : Ne fait rien !+
- '''CREATESTREAM''' : Créer un objet de type stream +
- '''SETFILEID:<ID>''' : Affecte un fichier représenté par <ID> à l'objet de type stream+
- '''PLAY''' : Commence la lecture+
- '''PAUSE''' : Met en pause la lecture+
- '''STOP''' : Arrête la lecture+
- '''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)+
 + '''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... To be continued...

Version actuelle

Sommaire

[masquer]

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