OpenSL ES

ملاحظة: ننصح مطوّري البرامج باستخدام مكتبة OBoe المفتوحة المصدر والمتوفّرة على GitHub. oboe هو برنامج تضمين C++ يوفّر واجهة برمجة تطبيقات تشبه إلى حد كبير سمة A Audio. يتصل OBoe بـ A Audio عند توفّر Aaudio، ويتم الرجوع إلى OpenSL ES في حال عدم توفّر A Audio.

تتضمن حزمة NDK عملية تنفيذ لمواصفات OpenSL ESTM 1.0.1 لواجهة برمجة التطبيقات من Khronos Group. تتيح لك هذه المكتبة استخدام C أو C++ لاستخدام الصوت العالي الأداء وبوقت الاستجابة المنخفض، سواء كنت تكتب جهاز مزج أو محطة عمل رقمية للصوت أو كاريوكي أو لعبة أو تطبيقًا آخر في الوقت الفعلي.

يعرض معيار OpenSL ESTM ميزات صوتية مشابهة لتلك المتوفّرة في واجهات برمجة تطبيقات MediaPlayer وMediaRecorder في إطار عمل Java على نظام التشغيل Android. يوفّر OpenSL ES واجهة لغة C بالإضافة إلى عمليات ربط C++ ، ما يسمح لك باستدعاء واجهة برمجة التطبيقات من الرمز المكتوب بأي من اللغتين.

تتوفر واجهات برمجة التطبيقات OpenSL ES لمساعدتك في تطوير أداء الصوت في تطبيقك وتحسينه.

تسمح رؤوس OpenSL ES العادية <SLES/OpenSLES.h> و <SLES/OpenSLES_Platform.h> بإدخال الصوت وإخراجه. الوظائف الإضافية المخصّصة لـ Android متوفّرة في <SLES/OpenSLES_Android.h> و<SLES/OpenSLES_AndroidConfiguration.h>.

يبدأ هذا القسم بشرح كيفية دمج OpenSL ES في تطبيقك. بعد ذلك، يوضّح ما تحتاج إلى معرفته عن تنفيذ OpenSL ES، مع التركيز أولاً على الاختلافات بين هذا التنفيذ والمواصفات المرجعية ثم الإضافات الإضافية لتوافق Android. ينتهي هذا القسم ببعض ملاحظات البرمجة التكميلية لضمان التنفيذ السليم لبرامج OpenSL ES.