WARNUNG: OpenSL ES wurde eingestellt. Entwickler sollten die Open-Source- Oboenbibliothek, die auf GitHub verfügbar ist Oboe ist ein C++-Wrapper, der eine API bietet, die der AAudio: Oboe ruft AAudio auf, wenn AAudio verfügbar ist, und wechselt zu OpenSL ES, wenn AAudio nicht verfügbar ist.
Das NDK-Paket enthält eine Android-spezifische Implementierung des OpenSL ESTM 1.0.1 API Spezifikation der Khronos Group. Mit dieser Bibliothek können Sie mit C oder C++ leistungsstarke Audiofunktionen mit niedriger Latenz implementieren, unabhängig davon, ob Sie einen Synthesizer, eine digitale Audio-Workstation, Karaoke, ein Spiel oder eine andere Echtzeit-App entwickeln.
Der OpenSL ESTM-Standard stellt Audiofunktionen bereit
ähnlich denen in MediaPlayer
und MediaRecorder
APIs im Android-Java-Framework. OpenSL ES bietet eine C-Sprachschnittstelle sowie
C++-Bindungen, mit denen Sie die API über Code aufrufen können, der in einer der beiden Sprachen geschrieben ist.
Mit den OpenSL ES APIs können Sie die Audioleistung Ihrer App entwickeln und verbessern.
Die standardmäßigen OpenSL ES-Header <SLES/OpenSLES.h> und <SLES/OpenSLES_Platform.h> Audioeingabe und -ausgabe zulassen. Zusätzliche Informationen Android-spezifische Funktionen befinden sich in <SLES/OpenSLES_Android.h> und <SLES/OpenSLES_AndroidConfiguration.h>.
In diesem Abschnitt wird zunächst erklärt, wie OpenSL ES in Ihre App integriert wird. Als Nächstes wird erklärt, was Sie wissen müssen, zur Android-Implementierung von OpenSL ES. Unterschiede zwischen dieser Implementierung und der „Referenzspezifikation“ und dann zusätzliche Erweiterungen für Android-Kompatibilität. Dieser Abschnitt endet mit einigen ergänzenden Hinweise zur Programmierung Implementierung von OpenSL ES.