OpenSL ES
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
אזהרה: OpenSL ES הוצאה משימוש. על המפתחים להשתמש בקוד פתוח
ספריית Oboe שזמינה ב-GitHub.
Oboe הוא wrapper של C++ שמספק API שדומה מאוד
אודיו. אבוב קורא לאודיו כשהאודיו מופעל
זמין, וחוזר ל-OpenSL ES אם אודיו לא זמין.
חבילת NDK כוללת יישום ספציפי ל-Android של
API של OpenSL ESTM 1.0.1
מקבוצתKhronos.
הספרייה הזו מאפשרת להשתמש ב-C או ב-C++ כדי להטמיע אודיו באיכות גבוהה עם זמן אחזור קצר, בין שאתם כותבים סינתיסייזר, תחנת עבודה דיגיטלית לאודיו, משחק קריוקי או אפליקציה אחרת בזמן אמת.
תקן OpenSL ES™ חושף תכונות אודיו שדומות לאלה בממשקי ה-API MediaPlayer
ו-MediaRecorder
במסגרת Java של Android. OpenSL ES מספקת ממשק שפה C וגם
קישורי C++ מאפשרים לכם לקרוא ל-API מקוד שנכתב בכל אחת מהשפות.
ממשקי OpenSL ES API יכולים לעזור לכם לפתח ולשפר את ביצועי האודיו של האפליקציה.
כותרות OpenSL ES הרגילות <SLES/OpenSLES.h> וגם
<SLES/OpenSLES_Platform.h> לאפשר קלט ופלט אודיו. פרטים נוספים
פונקציונליות ספציפית ל-Android זמינה ב-<SLES/OpenSLES_Android.h> וגם
<SLES/OpenSLES_AndroidConfiguration.h>.
בקטע הזה נסביר איך לשלב את OpenSL ES באפליקציה. לאחר מכן נסביר מה צריך לדעת על ההטמעה של OpenSL ES ב-Android, תוך התמקדות בהבדלים בין ההטמעה הזו לבין מפרט העזרה, ולאחר מכן בתוספים נוספים לשמירה על תאימות ל-Android. הקטע הזה מסתיים בכמה תוספות
הערות תכנות כדי להבטיח
של OpenSL ES.
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-26 (שעון UTC).
[null,null,["עדכון אחרון: 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."]]