OpenSL ES
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
هشدار: OpenSL ES منسوخ شده است. توسعه دهندگان باید از کتابخانه منبع باز Oboe استفاده کنند که در GitHub در دسترس است. Oboe یک بسته بندی C++ است که یک API ارائه می دهد که بسیار شبیه به AAudio است. زمانی که AAudio در دسترس باشد Oboe با AAudio تماس می گیرد و اگر AAudio در دسترس نباشد به OpenSL ES برمی گردد.
بسته NDK شامل یک پیاده سازی مختص اندروید از مشخصات API OpenSL ES™ 1.0.1 از گروه Khronos است. این کتابخانه به شما امکان می دهد از C یا C++ برای اجرای صدای با کارایی بالا و با تأخیر کم استفاده کنید، چه در حال نوشتن یک سینت سایزر، ایستگاه کاری صوتی دیجیتال، کارائوکه، بازی یا سایر برنامه های زمان واقعی باشید.
استاندارد OpenSL ES™ ویژگیهای صوتی شبیه به آنهایی که در MediaPlayer
و MediaRecorder
API در چارچوب Android Java ارائه میکند. OpenSL ES یک رابط زبان C و همچنین پیوندهای C++ را فراهم می کند که به شما امکان می دهد API را از کدهای نوشته شده به هر یک از زبان ها فراخوانی کنید.
APIهای OpenSL ES برای کمک به توسعه و بهبود عملکرد صوتی برنامه در دسترس هستند.
سرصفحههای استاندارد OpenSL ES <SLES/OpenSLES.h> و <SLES/OpenSLES_Platform.h> اجازه ورودی و خروجی صدا را میدهند. عملکرد اضافی مخصوص Android در <SLES/OpenSLES_Android.h> و <SLES/OpenSLES_AndroidConfiguration.h> است.
این بخش با توضیح نحوه ادغام OpenSL ES در برنامه شما آغاز می شود. سپس، آنچه را که باید در مورد پیاده سازی اندروید OpenSL ES بدانید، توضیح می دهد، ابتدا بر روی تفاوت های بین این پیاده سازی و مشخصات مرجع و سپس افزونه های اضافی برای سازگاری اندروید تمرکز می کند. این بخش با برخی نکات برنامه نویسی تکمیلی برای اطمینان از اجرای صحیح OpenSL ES به پایان می رسد.
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی."],[],[],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."]]