AudioEngine

Un article de XMIX.

Jump to: navigation, search

L'AudioEngine est le système qui assure la gestion de tout les objets audio du serveur. Nous l'utiliserons au moyen d'une session.

Sommaire

La Session

Une session est le point d'entrée de l'utilisation du moteur audio.

Les objets exposés

Les objets serveurs (TAE)

  • L'arbre des variables (CAEVar)
  • Les objets VarDump (CAEVarDump)
  • Le gestionaire de session (CAESessionMgr)

Les objets drivers (TAD/TAR)

Les objets drivers assure l'implémentation des librairie audios externe comme Bass et FMod

Les objets techniques (TAE)

  • Instanciation d'une DLL (TAEDll)

Le script

Qu'est ? L'idée d'introduire le script dans ce player me tien beacoup à coeur... et cela a pour objectif d'avoir la possibilité de piloter l'ensemble des fonctions du moteur de Xmix via un script.

Comment L'idée est d'y aller vite, donc nous avons choisi d'utiliser la méthode d'interprétation la plus simple, à savoir sans structure et chaque instruction est décrite en une ligne.

Voici un petite exemple

// Création d'un AudioGroupe
*:*:CREATEAUDIOGROUP:AG1
// Création d’un cannal audio nommé A
*:AG1:CREATECHANNEL:A
// Affectation du fichier ID=MON_FICHIER_1 à l’objet A
*:AG1/A:SETFILEID:"MON_FICHIER_1"
// Début de lecture du fichier après la quatrième seconde depuis le début
// de l’exécution du script
4000:AG1/A:PLAY
// Création d’un objet stream nommé B
*:AG1:CREATECHANNEL:B
// Affectation du fichier ID=MON_FICHIER_2 à l’objet B
*:AG1/B:SETFILEID:"MON_FICHIER_2"
// Libération des canaux A et B
*:AG1:FREE:A
*:AG1:FREE:B
// Fin du script