---
name: "MLV_audio.h"
section: "3"
platform: "linux"
package: "libmlv3-dev"
version: "3.1.0-8"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/MLV_audio.h"
---

# MLV\_audio.h(3)

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.

## NAME

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.

## SYNOPSIS

### 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\_Music** \* **MLV\_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\_Sound** \* **MLV\_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\_size* Taille 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**

*n* Le nombre d'échantillons sonores.

### void MLV\_free\_music (MLV\_Music \* music)

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

**Paramètres**

*music* Le 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**

*sound* L'é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\_music* Chemin 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\_sound* Chemin 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**

*music* Le morceau de musique à jouer. \
 *volume* Le volume sonore. \
 *loop* Le 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**

*sound* L'échantillon sonore à jouer. \
 *volume* Le volume sonore.

**Exemples** **advanced/04\_sound.c**.

## Auteur

Généré automatiquement par Doxygen pour MLV-3.1.0 à partir du code source.
