Documentation de la bibliothèque MLV-1.2.1

Définitions de type | Fonctions
Référence du fichier MLV_audio.h

Ce fichier définit les prototypes des fonctions permettant de faire jouer de la musique et des échantillons sonores à l'aide de la bibliothèque MLV. Plus de détails...

Aller au code source de ce fichier.

Définitions de type

typedef struct _MLV_Music MLV_Music
 Ce type code un morceau de musique.
typedef struct _MLV_Sound MLV_Sound
 Ce type code un échantillon sonore.

Fonctions

int MLV_init_audio ()
 Cette fonction initialise la bibliothèque MLV pour pouvoir jouer de la musique et des sons.
void MLV_free_audio ()
 Ferme proprement les différents périphériques audios.
int MLV_change_audio_buffer_size (int buffer_size)
 Change la taille du buffer audio. La taille doit être une puissance de 2.
void MLV_change_number_of_parallel_sounds (unsigned int n)
 Change le nombre d'écahantillons sonores qui peuvent être joués en même temps.
MLV_MusicMLV_load_music (const char *file_music)
 Charge un ficher contenant de la musique en mémoire.
void MLV_free_music (MLV_Music *music)
 Ferme un morceau de musique chargé en mémoire.
void MLV_play_music (const MLV_Music *music, float volume, int loop)
 Joue un morceau de musique qui est chargée en mémoire.
void MLV_stop_music ()
 Arrête toutes les musiques.
MLV_SoundMLV_load_sound (const char *file_sound)
 Charge un ficher contenant un échantillon sonore en mémoire.
void MLV_free_sound (MLV_Sound *sound)
 Ferme un échantillon sonore chargé en mémoire.
void MLV_play_sound (const MLV_Sound *sound, float volume)
 Joue un échantillon sonore chargé en mémoire.
void MLV_stop_all_sounds ()
 Arrête tous les échantillons sonores.

Description détaillée

Ce fichier définit les prototypes des fonctions permettant de faire jouer de la musique et des échantillons sonores à l'aide de la bibliothèque MLV.

Auteur
Adrien Boussicault
Marc Zipstein

Documentation des fonctions

int MLV_change_audio_buffer_size ( int  buffer_size)

Change la taille du buffer audio. La taille doit être une puissance de 2.

Le porgramme rempli périodiquement un buffer audio à faire jouer par la carte son. Plus la taille du buffer audio est grande, plus le programme à le temps de remplir le buffer avant qu'il se vide. Plus le buffer est grand, plus le programme met du temps à le remplir.

Ainsi, si il y a un temps de latence entre une action et l'execution sonore du son correspondant, c'est que vous devez réduire la taille du buffer audio.

Si le son est coupé et crépite, c'est que le buffer est trop petit et que le processeur est trop lent pour remplir le buffer avant qu'il se vide. Vous devez donc agrandir la taille du buffer.

MLV_change_buffer_size vous permet d'ajuster la taille de ce buffer. par default la taille du buffer est mis à 1024.

Si vous utilisez le programme uniquement pour jouer de la musique, nous vous vous conseillons de configurer la taille du buffer à 4096.

Paramètres
buffer_sizeTaille du buffer audio ( une puissance de 2 )
Renvoie
Renvoie 0 si l'infrastructure audio a été correctement initialisé, renvoie -1 sinon.
void MLV_change_number_of_parallel_sounds ( unsigned int  n)

Change le nombre d'écahantillons sonores qui peuvent être joués en même temps.

Paramètres
nLe nombre d'échantillons sonores.
void MLV_free_music ( MLV_Music music)

Ferme un morceau de musique chargé en mémoire.

Paramètres
musicLe morceau de musique à fermer
Exemples:
advanced/03_music.c.
void MLV_free_sound ( MLV_Sound sound)

Ferme un échantillon sonore chargé en mémoire.

Paramètres
soundL'échantillon sonore à fermer
Exemples:
advanced/04_sound.c.
int MLV_init_audio ( )

Cette fonction initialise la bibliothèque MLV pour pouvoir jouer de la musique et des sons.

Renvoie
Renvoie 0 si l'infrastructure audio a été correctement initialisé, renvoie -1 sinon.
Exemples:
advanced/03_music.c, advanced/04_sound.c, advanced/09_animation.c, et advanced/11_animation_book.c.
MLV_Music* MLV_load_music ( const char *  file_music)

Charge un ficher contenant de la musique en mémoire.

Cette fonction prends en paramètre le chemin d'accès du fichier contenant la musique et renvoie un pointeur vers l'espace mémoire où a été chargé la musique.

Les formats de fichier acceptés sont les suivants .ogg, .mp3, .wav, etc ...

Paramètres
file_musicChemin d'accès vers un fichier contenant de la musique codée en format .wav.
Renvoie
Un pointeur vers la musique chargée en mémoire, ou NULL si la bibliothèque n'a pas réussi à charger la musique en mémoire.
Exemples:
advanced/03_music.c.
MLV_Sound* MLV_load_sound ( const char *  file_sound)

Charge un ficher contenant un échantillon sonore en mémoire.

Cette fonction prends en paramètre le chemin d'accès du fichier contenant l'échantillon sonore et renvoie un pointeur vers l'espace mémoire où a été chargé l'échantillon sonore.

Les formats de fichier acceptés sont les suivants : WAVE, AIFF, RIFF, OGG, and VOC.

Paramètres
file_soundChemin d'accès vers un fichier contenant un échantillon sonore.
Renvoie
Null si le fichier n'a pas pu être chargé en mémoire. Un pointeur vers l'échantllon sonore sinon.
Exemples:
advanced/04_sound.c, et advanced/09_animation.c.
void MLV_play_music ( const MLV_Music music,
float  volume,
int  loop 
)

Joue un morceau de musique qui est chargée en mémoire.

Paramètres
musicLe morceau de musique à jouer.
volumeLe volume sonore.
loopLe nombre de fois que le morceau doit être joué. Si loop est strictement négatif, le morceau sera joué indéfiniment.
Exemples:
advanced/03_music.c.
void MLV_play_sound ( const MLV_Sound sound,
float  volume 
)

Joue un échantillon sonore chargé en mémoire.

Paramètres
soundL'échantillon sonore à jouer.
volumeLe volume sonore.
Exemples:
advanced/04_sound.c.