Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Aplikacje audio o wysokiej wydajności zwykle wymagają większej funkcjonalności niż proste możliwości odtwarzania i nagrywania dźwięku. Wymagają responsywnego
działania systemu w czasie rzeczywistym. Oto niektóre typowe przypadki użycia:
Cyfrowe stacje robocze audio
Syntezatory
Automaty perkusyjne
Aplikacje do nauki muzyki
Karaoke
Miksowanie DJ-a
Efekty dźwiękowe
Rozmowy wideo/audio
W tej sekcji omawiamy ogólne zasady minimalizowania opóźnienia dźwięku.
Znajdziesz w nim też wskazówki dotyczące próbkowania audio, które pomogą Ci wybrać optymalną częstotliwość próbkowania, a także poznać wady i zalety używania liczb zmiennoprzecinkowych do przedstawiania danych audio.
W dalszej części sekcji omawiamy 2 biblioteki dostępne do tworzenia aplikacji audio o wysokiej wydajności:
OpenSL ES to implementacja specyfikacji interfejsu OpenSL ESTM API opracowanych przez Khronos Group, specyficznych dla Androida.
Format OpenSL ES nie jest zalecany w przypadku nowych projektów. Deweloperzy aplikacji i dostawcy oprogramowania pośredniczącego powinni kierować reklamy na Oboe lub AAudio jako natywny interfejs audio.
Aplikacja AAudio została opracowana jako lekka, natywna alternatywa dla biblioteki OpenSL ES na Androida. Interfejs AAudio API jest mniejszy i łatwiejszy
w użyciu niż OpenSL ES.
Dodatkowe materiały
Aby dowiedzieć się więcej, skorzystaj z tych materiałów:
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-07-26 UTC.
[null,null,["Ostatnia aktualizacja: 2025-07-26 UTC."],[],[],null,["# High-performance audio\n\nHigh performance audio apps typically require more functionality than the simple\nability to play or record sound. They demand responsive realtime system\nbehavior. Some typical use cases include:\n\n- Digital audio workstations\n- Synthesizers\n- Drum machines\n- Music learning apps\n- Karaoke apps\n- DJ mixing\n- Audio effects\n- Video/audio conferencing\n\nThis section explains the general principles of minimizing\n[audio latency](/ndk/guides/audio/audio-latency).\nIt also provides [advice about audio sampling](/ndk/guides/audio/sampling-audio),\nto help you choose the optimal sample rate and consider the pros and cons of using floating-point\nnumbers to represent your audio data.\n\nThe rest of the section describes the two libraries that\nare available for writing high-performance audio applications:\n\n- [OpenSL ES](/ndk/guides/audio/opensl) is an Android-specific implementation of the OpenSL ES™ API specification from the Khronos Group. OpenSL ES is not recommended for new designs. App developers and middleware providers should target either Oboe or AAudio as the native audio interface.\n- [AAudio](/ndk/guides/audio/aaudio/aaudio) was developed as a lightweight, native Android alternative to the OpenSL ES library. The AAudio API is smaller and easier to use than OpenSL ES.\n\n| **Note:** Developers should consider using the open source Oboe library which is available on [GitHub](https://github.com/google/oboe). Oboe is a C++ wrapper that provides an API that closely resembles AAudio. It calls AAudio when it is available, and falls back to OpenSL ES if AAudio is not available.\n\nAdditional resources\n--------------------\n\nTo learn more, take advantage of the following resources:\n\n\u003cbr /\u003e\n\n### Sample\n\n- [Oboe Samples](https://github.com/google/oboe/tree/master/samples)\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n### Codelabs\n\n- [Making Waves Part 1 - Build a Synthesizer](/codelabs/making-waves-1-synth)\n- [Making More Waves - Sampler](/codelabs/making-waves-2-sampler)\n- [Build a Musical Game using Oboe](https://developer.android.com/codelabs/musicalgame-using-oboe)\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n### Videos\n\n- [Getting Started with Oboe](http://bit.ly/Introducing-Oboe)\n- [Best Practices for Android Audio (Google I/O '17)](https://www.youtube.com/watch?v=C0BPXZIvG-Q)\n\n\u003cbr /\u003e"]]