OpenSL ES
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
AVISO: o OpenSL ES foi descontinuado. Os desenvolvedores devem usar o modelo
Biblioteca Oboe, disponível no GitHub (em inglês).
A Oboe é um wrapper C++ que fornece uma API parecida com
AAudio. A Oboe chama a AAudio quando a AAudio está
disponível e recorre ao OpenSL ES se AAudio não estiver disponível.
O pacote do NDK inclui uma implementação específica do Android do
API OpenSL ESTM 1.0.1
especificação do Khronos Group.
Essa biblioteca permite que você use C ou C++ para implementar áudio de alto desempenho e baixa latência, seja
você escreve um sintetizador, estação de trabalho de áudio digital, karaokê, jogo,
ou outro aplicativo de tempo real.
O padrão OpenSL ESTM expõe recursos de áudio
semelhantes aos de MediaPlayer
e MediaRecorder
APIs na estrutura Java do Android. O OpenSL ES fornece uma interface em linguagem C, bem como
Vinculações C++, que permitem chamar a API pelo código escrito em qualquer linguagem.
As APIs OpenSL ES estão disponíveis para ajudar a desenvolver e melhorar o desempenho de áudio do aplicativo.
Os cabeçalhos padrão do OpenSL ES <SLES/OpenSLES.h> e
<SLES/OpenSLES_Platform.h> permitem entrada e saída de áudio. Adicional
A funcionalidade específica do Android está em <SLES/OpenSLES_Android.h>. e
<SLES/OpenSLES_AndroidConfiguration.h>.
Esta seção começa explicando
como incorporar o OpenSL ES ao seu app.
Depois, explica o que você precisa saber
sobre a implementação do OpenSL ES no Android, com foco primeiro nos
diferenças entre essa implementação e a
a especificação de referência e, em seguida,
extensões adicionais
para compatibilidade com Android. A seção termina com algumas
adicionais de programação para garantir o
implementação do OpenSL ES.
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-07-26 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-07-26 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."]]