OpenSL ES
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Catatan: Sebaiknya developer mempertimbangkan penggunaan library open source Oboe yang
tersedia di GitHub. Oboe adalah wrapper C++ yang menyediakan API yang sangat mirip dengan
AAudio. Oboe memanggil AAudio saat tersedia, dan melakukan fallback ke OpenSL ES jika AAudio tidak tersedia.
Paket NDK menyertakan implementasi khusus Android untuk spesifikasi
OpenSL ES™ 1.0.1 API
dari Khronos Group.
Dengan library ini, Anda dapat menggunakan C atau C++ untuk mengimplementasikan audio yang memiliki performa tinggi dan latensi rendah, baik Anda sedang menulis synthesizer, workstation audio digital, karaoke, game, maupun aplikasi real-time lainnya.
Standar OpenSL ES™ menampakkan berbagai fitur audio yang mirip dengan yang ada di API MediaPlayer
dan MediaRecorder
di framework Java Android. OpenSL ES menyediakan antarmuka bahasa C serta binding C++, yang memungkinkan Anda memanggil API dari kode yang ditulis dalam salah satu bahasa tersebut.
Berbagai API OpenSL ES tersedia untuk membantu Anda mengembangkan dan meningkatkan performa audio aplikasi Anda.
Header OpenSL ES standar <SLES/OpenSLES.h> dan <SLES/OpenSLES_Platform.h> mendukung input dan output audio. Fungsi khusus Android lainnya berada dalam <SLES/OpenSLES_Android.h> dan <SLES/OpenSLES_AndroidConfiguration.h>.
Bagian ini dimulai dengan penjelasan tentang cara mengintegrasikan OpenSL ES ke aplikasi Anda. Selanjutnya, bagian ini menjelaskan hal-hal yang perlu Anda ketahui tentang implementasi OpenSL ES di Android, yang pertama-tama berfokus pada perbedaan antara implementasi ini dan spesifikasi referensi, kemudian ekstensi tambahan untuk kompatibilitas Android. Bagian ini diakhiri dengan beberapa catatan pemrograman tambahan untuk memastikan implementasi OpenSL ES yang tepat.
Konten dan contoh kode di halaman ini tunduk kepada lisensi yang dijelaskan dalam Lisensi Konten. Java dan OpenJDK adalah merek dagang atau merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-01-10 UTC.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2024-01-10 UTC."],[],[],null,["# OpenSL ES\n\nWARNING: OpenSL ES is **deprecated** . Developers should use the open source\nOboe library which is available on [GitHub](https://github.com/google/oboe).\nOboe is a C++ wrapper that provides an API that closely resembles\n[AAudio](/ndk/guides/audio/aaudio/aaudio). Oboe calls AAudio when AAudio is\navailable, and falls back to OpenSL ES if AAudio is not available.\n\nThe NDK package includes an Android-specific implementation of the\n[OpenSL ES™](https://www.khronos.org/opensles/) 1.0.1 API\nspecification from the [Khronos Group](https://www.khronos.org).\nThis library lets you use C or C++ to implement high-performance, low-latency audio, whether\nyou are writing a synthesizer, digital audio workstation, karaoke, game,\nor other real-time app.\n\n\nThe OpenSL ES™ standard exposes audio features\nsimilar to those in the [MediaPlayer](/reference/android/media/MediaPlayer) and [MediaRecorder](/reference/android/media/MediaRecorder)\nAPIs in the Android Java framework. OpenSL ES provides a C language interface as well as\nC++ bindings, allowing you to call the API from code written in either language.\n\n\nThe OpenSL ES APIs are available to help you develop and improve your app's audio performance.\n\n\nThe standard OpenSL ES headers \\\u003cSLES/OpenSLES.h\\\u003e and\n\\\u003cSLES/OpenSLES_Platform.h\\\u003e allow audio input and output. Additional\nAndroid-specific functionality is in \\\u003cSLES/OpenSLES_Android.h\\\u003e and\n\\\u003cSLES/OpenSLES_AndroidConfiguration.h\\\u003e.\n\nThis section begins by explaining\n[how to incorporate OpenSL ES into your app](/ndk/guides/audio/opensl/getting-started).\nNext, it explains what you need to know\nabout the Android implementation of OpenSL ES, focusing first on the\n[differences](/ndk/guides/audio/opensl/opensl-for-android) between this implementation and the\nreference specification and then\n[additional extensions](/ndk/guides/audio/opensl/android-extensions)\nfor Android compatibility. This section concludes with some supplemental\n[programming notes](/ndk/guides/audio/opensl/opensl-prog-notes) to ensure proper\nimplementation of OpenSL ES."]]