# Audio

> Découvrez comment insérer un fichier audio et créer de nombreuses actions dans PandaSuite, comme la lecture automatique, la création d'un lecteur sur-mesure et la synchronisation avec d'autres composants.

https://docs.pandasuite.com/fr/essentials/components/audio/

**Découvrez comment insérer un fichier audio et créer de nombreuses actions : lancez la lecture automatique en arrière-plan, créez un lecteur sur-mesure, déclenchez une action à un temps précis, synchronisez votre son à un autre composant etc...**

[Image : Lecteur audio sur-mesure dans une app mobile : pochette d'album, barre de progression et bouton lecture]

## Insérer un fichier audio

Pour insérer un fichier audio, cliquez sur Media et importez votre fichier. Voici la liste des formats acceptés : .MP3 ; .WAV ; .WMA ; .AAC ; .M4A.

Pour l'ajouter dans votre application, vous pouvez l'insérer directement depuis vos medias ou insérer un composant Audio dans lequel vous changez la source.

> **Info**
>
> Si vous souhaitez que votre audio soit accessible tout au long de
> l'application, insérez votre composant Audio au niveau du Projet.

Le composant Audio est un composant non graphique : il n'existe pas de lecteur audio par défaut. Vous pouvez simplement créer votre lecteur sur-mesure à l'aide de la synchronisation et du composant Zone de défilement. En savoir plus : [Lecteur audio avec barre de progression](https://docs.pandasuite.com/fr/tutorials/how-to/custom-audio-player-with-progress-bar/).

## Caractéristiques du composant

### Propriétés

- **Lecture automatique** : le fichier audio se lance automatiquement
- **En boucle** : à la fin de la piste, l'audio recommence au début
- **Arrêt auto. à la lecture d'un nouvel audio**
- **Début :** définissez le début de votre son pour créer une piste spécifique. L'unité est la seconde.
- **Fin :** définissez la fin de votre son pour créer une piste spécifique. L'unité est la seconde.
- **Volume :** choisissez le volume par défaut (1 étant le volume initial de l'audio) et la plage de volume dans le cadre d'une synchronisation.
- **Vitesse :** choisissez la vitesse par défaut (1 étant la vitesse initiale de l'audio) et la plage de vitesse dans le cadre d'une synchronisation.

> **Info**
>
> Si vous avez un seul fichier audio que vous voulez décomposer en plusieurs
> pistes, au lieu de le découper en plusieurs fichiers via un logiciel externe,
> réutilisez plusieurs fois votre fichier et à chaque fois paramétrez le début
> et la fin de la piste

### Liaison de données

Vous pouvez [lier la propriété **Source**](https://docs.pandasuite.com/fr/essentials/data/data-binding/) à une source de données pour changer dynamiquement le fichier audio lu. Cela vous permet de mettre à jour le contenu audio en fonction des données provenant de bases de données, d'API ou d'interactions utilisateur sans sélectionner manuellement un nouveau fichier.

Pour lier la source audio :

1. Sélectionnez le composant Audio
2. Dans le panneau Propriétés, localisez la propriété **Source**
3. Cliquez sur l'icône de liaison à côté de **Source**
4. Choisissez votre source de données et mappez-la à un champ audio

Les données liées doivent pointer vers une URL de fichier audio valide ou un identifiant de ressource.

### Propriétés exposées

Le composant Audio expose les données suivantes qui peuvent être liées à d'autres composants :

- **Valeur courante** : Le temps de lecture actuel en secondes (par ex. 15,5 pour 15,5 secondes écoulées)
- **Durée** : La durée totale du fichier audio en secondes
- **En cours de lecture** : Booléen indiquant si l'audio est en cours de lecture (true) ou non (false)

Ces propriétés sont utiles pour créer des lecteurs audio personnalisés avec des barres de progression, des affichages de temps ou des boutons lecture/pause qui reflètent l'état de lecture réel.

### Déclencheurs

Sélectionnez votre audio et ajoutez une action. Voici la liste des événements déclencheurs disponibles :

- **Commence lecture**
- **Mise en pause**
- **Arrêt lecture**
- **Fin lecture**

### Actions

Sélectionnez un événement déclencheur et choisissez l'action **Agir sur un composant** > **Audio.**

[Image : Bouton lecture d'un écran de guide audio : au clic, Lecture/Pause sur le composant Audio Rosewood guide]

Choisissez parmi les actions suivantes :

- **Lecture/Pause**
- **Commencer la lecture**
- **Mettre en pause**
- **Arrêter la lecture**
- **Avancer**
- **Reculer**
- **Redémarrer au début**
- **Mettre le volume**
- **Augmenter le volume**
- **Diminuer le volume**
- **Mettre la vitesse**
- **Augmenter la vitesse**
- **Diminuer la vitesse**

> **Attention**
>
> Attention de nombreux navigateurs web (Firefox, Chrome) bloquent les fichiers
> audio en lecture automatique quand ils se lancent sans interaction
> utilisateur. Pour en savoir plus : [Lecture automatique et navigateurs
> web](https://docs.pandasuite.com/fr/essentials/multimedia/autoplay-in-web-browsers/)

## Créer des marqueurs de temps

Pour déclencher une action à un temps précis, créez des [marqueurs](https://docs.pandasuite.com/fr/essentials/interactions/markers/) pour définir des temps sur votre fichier audio pour lesquels vous souhaitez associer des actions particulières.

Entrez dans le composant Audio et créez des marqueurs. Utilisez le lecteur audio pour parcourir l'audio et sélectionner le temps à marqueur.

[Image : Dans le composant Audio : un lecteur pour parcourir le son et la liste des temps avec deux marqueurs, à 00:05 et 00:15]

Une fois que vos marqueurs sont créés, ils deviennent disponibles dans la liste des déclencheurs.

[Image : Déclencheurs du guide audio : les deux marqueurs de temps sont encadrés en tête, avant Commence lecture, Mise en pause…]

Vous pouvez aussi générer ces marqueurs de temps depuis une source de données. Créez un marqueur, choisissez **Activer source**, renseignez sa **Source**, puis liez **Temps** à un champ numérique exprimé en secondes. Pour le workflow complet, consultez [Marqueurs](https://docs.pandasuite.com/fr/essentials/interactions/markers/).

## Synchroniser un audio avec un autre composant

[Synchronisez votre audio](https://docs.pandasuite.com/fr/essentials/components/synchronization/) avec n'importe quel autre composant (Minuteur, Audio, Galerie...). Vous pouvez synchroniser :

- Temps
- Volume
- Vitesse
- Marqueurs

Définissez ces paramètres depuis les propriétés du composant Synchronisation.

## Mode silencieux sur iOS

Sur les appareils iOS (iPhone/iPad), le [bouton physique de mode silencieux](https://support.apple.com/fr-afri/105103) (situé sur le côté de l'appareil) peut empêcher la lecture du son, sauf si vous activez l'option **Audio en arrière-plan** décrite ci-dessous.

## Audio en arrière-plan

Par défaut, le son de votre application suit les règles de l'appareil : il se met en pause lorsque l'utilisateur quitte l'application ou verrouille son écran, et sur iPhone ou iPad il reste muet quand l'appareil est en mode silencieux.

Activez l'option **Audio en arrière-plan** dans les [Propriétés du projet](https://docs.pandasuite.com/fr/essentials/project-properties/project-properties-and-actions/) pour faire passer le son en mode « lecteur multimédia », comme une application de musique ou de podcast. L'effet dépend de la plateforme :

- **iOS et iPadOS** : le son se fait entendre même quand l'appareil est en mode silencieux, et il continue lorsque l'écran est verrouillé.
- **Android** : le son continue de jouer quand l'application passe en arrière-plan, au lieu de se mettre en pause puis de reprendre au retour de l'utilisateur.
- **Web et PWA** : sur les navigateurs compatibles (Safari sur iOS notamment), le son se comporte comme dans le cas iOS ci-dessus. Sur les autres navigateurs, la lecture suit les règles propres au navigateur.

Activez cette option pour une musique de fond, un guide audio, un podcast ou tout son qui doit accompagner l'utilisateur en continu. Laissez-la désactivée si le son doit s'arrêter dès que l'application n'est plus au premier plan.
