Les applications audio haute performance nécessitent généralement davantage de fonctionnalités que la simple lecture ou l'enregistrement audio. Elles ont besoin d'un système réactif en temps réel. Voici certains cas d'utilisation types :
- Stations audionumériques
- Synthétiseurs
- Boîtes à rythmes
- Applications d'apprentissage musical
- Applications de karaoké
- Mixage DJ
- Effets audio
- Conférence vidéo/audio
Cette section expose les principes généraux qui permettent de réduire la latence audio. Elle fournit également des conseils sur l'échantillonnage audio pour vous aider à choisir le taux d'échantillonnage optimal, mais aussi à comprendre les avantages et les inconvénients liés à l'utilisation de nombres à virgule flottante pour représenter vos données audio.
Le reste de la section décrit les deux bibliothèques disponibles pour créer des applications audio haute performance :
- OpenSL ES est une implémentation propre à Android de la spécification d'API OpenSL ES™ du Khronos Group. Il est déconseillé d'utiliser OpenSL ES pour de nouvelles créations. Les développeurs d'applications et les fournisseurs de middleware doivent cibler Oboe ou AAudio comme interface audio native.
- AAudio a été développé comme une alternative Android native et légère à la bibliothèque OpenSL ES. L'API AAudio est plus petite et plus facile à utiliser qu'OpenSL ES.
Ressources supplémentaires
Pour en savoir plus, consultez les ressources suivantes :
Exemples
Ateliers de programmation
Vidéos
- Getting Started with Oboe (Premiers pas avec Oboe)
- Best Practices for Android Audio (Google I/O '17) (Bonnes pratiques pour Android Audio [Google I/O 2017])