» Back To Index
API Demoniak3D/LUA: Libraire sonore
La libraire
HYP_Sound permet d'effectuer des opérations générales sur les fichiers audio.
HYP_Sound.Disable_DSP_Unit
HYP_Sound.Enable_DSP_Unit
HYP_Sound.GetSpectrumValue
HYP_Sound.GetTrackTime
HYP_Sound.GetVolume
HYP_Sound.IsTrackFinished
HYP_Sound.Play
HYP_Sound.SetVolume
HYP_Sound.Stop
HYP_Sound.SetSourcePosition
HYP_Sound.SetListenerPosition
HYP_Sound.SetListenerOrientation
HYP_Sound.Load
HYP_Sound.Unload
HYP_Sound.GetIdFromName
SetSourcePosition
SetSourcePosition permet de spécifier la position d'une source sonore.
Syntaxe
HYP_Sound.SetSourcePosition( name|id, x, y, z );
- name - [STR127] - nom du sound track.
- id: [INTEGER] - identificateur du sound track.
- x - [REAL] - coordonnée en X de la position.
- y - [REAL] - coordonnée en Y de la position.
- z - [REAL] - coordonnée en Z de la position.
SetListenerPosition
SetListenerPosition permet de spécifier la position de l'écouteur. En général, la position de l'écouteur est celle
de la caméra active. Il suffit donc de récupérer la position de la camera et de l'affecter à la fonction SetListenerPosition().
Syntaxe
HYP_Sound.SetListenerPosition( x, y, z );
- x - [REAL] - coordonnée en X de la position.
- y - [REAL] - coordonnée en Y de la position.
- z - [REAL] - coordonnée en Z de la position.
SetListenerOrientation
SetListenerPosition permet de spécifier l'orientation de l'écouteur. En général, l'orientation de l'écouteur est celle
de la caméra active. Il suffit donc de récupérer l'orientation de la camera et de l'affecter à la fonction SetListenerOrientation().
Syntaxe
HYP_Sound.SetListenerOrientation( forward_x, forward_y, forward_z,
up_x, up_y, up_z );
- forward_x - [REAL] - coordonnée en X du vecteur direction.
- forward_y - [REAL] - coordonnée en Y du vecteur direction.
- forward_z - [REAL] - coordonnée en Z du vecteur direction
- up_x - [REAL] - coordonnée en X du vecteur haut.
- up_y - [REAL] - coordonnée en Y du vecteur haut.
- up_z - [REAL] - coordonnée en Z du vecteur haut.
Play
Play permet de démarrer la lecture d'un fichier audio préalablement chargé par le script XML.
Syntaxe
HYP_Sound.Play( name|id );
- name - [STR127] - nom du sound track.
- id: [INTEGER] - identificateur du sound track.
Exemple
HYP_Sound.Play( "dring" );
Stop
Stop permet de stopper la lecture d'un fichier audio.
Syntaxe
HYP_Sound.Stop( name|id );
- name - [STR127] - nom du sound track.
- id: [INTEGER] - identificateur du sound track.
Exemple
HYP_Sound.Stop( "dring" );
Enable_DSP_Unit
Enable_DSP_Unit permet d'activer une des unité DSP du sound system. Cette fonction est à appeler une fois
par frame afin de pouvoir utiliser la fonction GetSpectrumValue().
Syntaxe
HYP_Sound.Enable_DSP_Unit();
Disable_DSP_Unit
Disable_DSP_Unit permet de désactiver l'unité DSP activé par Enable_DSP_Unit().
Syntaxe
HYP_Sound.Disable_DSP_Unit();
GetSpectrumValue
GetSpectrumValue permet de récuperer composante du spectre audio. Le spectre audio est composé de 512
composantes qui représentent la plage des fréquences audio. Chaque composante correspond à une bande de fréquence
de quelques Hertz. La première entrée du spectre est indexé par 0 et la dernière par 511. L'entrée 511 correspond
à 22050 Hz. La valeur obtenue par GetSpectrumValue() est comprise entre 0.0 et 1.0.
Syntaxe
value = HYP_Sound.GetSpectrumValue( index );
- index: [INTEGER] - valeur comprise entre 0 et 511.
GetTrackTime
GetTrackTime permet de récuperer le temps écoulé en millisecondes depuis le début de la piste audio.
Syntaxe
elapsed_time = HYP_Sound.GetTrackTime( name|id );
- name - [STR127] - nom du sound track.
- id: [INTEGER] - identificateur du sound track.
SetTrackVolume
SetTrackVolume permet de régler le volume sonore d'une piste particulière.
Syntaxe
HYP_Sound.SetTrackVolume( name|id, volume );
- name - [STR127] - nom du sound track.
- id: [INTEGER] - identificateur du sound track.
- volume: [INREGER] - valeur du volume comprise entre 0 et 255.
GetTrackVolume
GetTrackVolume permet de régler le volume sonore d'une piste particulière.
Syntaxe
volume = HYP_Sound.GetTrackVolume( name|id );
- name - [STR127] - nom du sound track.
- id: [INTEGER] - identificateur du sound track.
- volume: [INREGER] - valeur du volume comprise entre 0 et 255.
IsTrackFinished
IsTrackFinished permet de savoir si une piste en cours de lecture est finie ou non. Cette fonction
retourne 1 si la lecture de la piste est terminée et 0 sinon.
Syntaxe
state = HYP_Sound.IsTrackFinished( name|id );
- name - [STR127] - nom du sound track.
- id: [INTEGER] - identificateur du sound track.
- state: [INREGER] - 1 pour fini et 0 pour non fini.
Load
Load permet de charger un fichier sonore.
Syntaxe
id = HYP_Sound.Load( filename, loop_mode );
- filename - [STR255] - localisation du fichier audio relativement au répertoire courant de la démo.
- loop_mode: [INTEGER] - 1 pour mode looping et 0 pour mode non looping.
- id: [INTEGER] - identificateur du nouveau sound track.
Unload
Unload permet de décharger un fichier sonore de la mémoire.
Syntaxe
HYP_Sound.Unload( id|name );
- name - [STR127] - nom du sound track.
- id: [INTEGER] - identificateur du sound track.
GetIdFromName
GetIdFromName permet de récupérer l'identifiant d'un sound track à partir de son nom.
Syntaxe
id = HYP_Sound.GetIdFromName( name );
- name - [STR255] - nom du souond track.
- id: [INTEGER] - identificateur du sound track.