تكوين تأثيرات المعالجة المسبقة

يتضمن إصدار Android 10 المتطلبات التالية للالتقاط باستخدام VOICE_COMMUNICATION .

  • يجب أن توفر التطبيقات أداة إلغاء الصدى الصوتي (AEC) على مسار الالتقاط عند الالتقاط باستخدام VOICE_COMMUNICATION .
  • في حالة توفير إلغاء الصدى الصوتي (AEC)، يجب أن يكون قابلاً للاكتشاف والتحكم فيه من خلال AcousticEchoCanceler الخاص بـ SDK API.

توفر منصة Android تأثيرات صوتية على الأجهزة المدعومة في حزمة audiofx ، وهي متاحة للمطورين للوصول إليها. على سبيل المثال، يدعم جهاز Nexus 10 تأثيرات المعالجة المسبقة التالية:

إقران مع مثيلات AudioSource

يتم إقران تأثيرات المعالجة المسبقة مع وضع حالة الاستخدام الذي يتم فيه طلب المعالجة المسبقة. في تطوير تطبيقات Android، تتم الإشارة إلى حالة الاستخدام على أنها مثيل AudioSource ؛ ويطلب مطورو التطبيقات استخدام تجريد AudioSource بدلاً من جهاز الصوت الفعلي. يقوم Android Audio Policy Manager بتعيين مثيل AudioSource لتكوين مسار التقاط معين (بما في ذلك الجهاز والكسب والمعالجة المسبقة) وفقًا للقواعد الخاصة بالمنتج. المصادر التالية مكشوفة للمطورين:

  • android.media.MediaRecorder.AudioSource.CAMCORDER
  • android.media.MediaRecorder.AudioSource.VOICE_COMMUNICATION
  • android.media.MediaRecorder.AudioSource.VOICE_CALL
  • android.media.MediaRecorder.AudioSource.VOICE_DOWNLINK
  • android.media.MediaRecorder.AudioSource.VOICE_UPLINK
  • android.media.MediaRecorder.AudioSource.VOICE_RECOGNITION
  • android.media.MediaRecorder.AudioSource.MIC
  • android.media.MediaRecorder.AudioSource.DEFAULT

يتم تحديد تأثيرات المعالجة المسبقة الافتراضية المطبقة على كل مثيل AudioSource في الملف /vendor/etc/audio_effects.xml . لتحديد تأثيراتك الافتراضية لكل مثيل AudioSource ، قم بإنشاء ملف /vendor/etc/audio_effects.xml وحدد تأثيرات المعالجة المسبقة المطلوب تشغيلها. على سبيل المثال، راجع تنفيذ جهاز Nexus 10 في device/samsung/manta/audio_effects.xml . تكتسب مثيلات AudioEffect جلسة وتطلقها عند إنشائها وتدميرها، مما يتيح للتأثيرات (مثل محسن الصوت) الاستمرار طوال الجلسة.

يتيح المثال التالي المعالجة المسبقة لمثيلات VoIP AudioSource وCamcorder AudioSource . ومن خلال الإعلان عن تكوين AudioSource بهذه الطريقة، يطلب إطار العمل تلقائيًا استخدام تلك التأثيرات من HAL.

<preprocess>
        <stream type="voice_communication">
            <apply effect="aec"/>
            <apply effect="ns"/>
        </stream>
        <stream type="camcorder">
            <apply effect="agc"/>
        </stream>
    </preprocess>

ضبط المصدر

لا يشتمل ضبط AudioSource على متطلبات واضحة بشأن كسب الصوت أو معالجة الصوت باستثناء التعرف على الصوت ( VOICE_RECOGNITION ). تتضمن متطلبات التعرف على الصوت ما يلي:

  • استجابة التردد المسطح (+/- 3 ديسيبل) من 100 هرتز إلى 4 كيلو هرتز
  • تكوين التحدث عن قرب: 90 ديسيبل SPL يقرأ RMS بقيمة 2500 (عينات 16 بت)
  • يتتبع المستوى خطيًا من -18 ديسيبل إلى +12 ديسيبل بالنسبة إلى 90 ديسيبل SPL
  • THD < 1% (90 ديسيبل SPL في نطاق 100 إلى 4000 هرتز)
  • متطلبات الموجات فوق الصوتية القريبة (للاختبار، راجع اختبارات الموجات فوق الصوتية القريبة ):
    • دعم SUPPORT_PROPERTY_MIC_NEAR_ULTRASOUND كما هو محدد في القسم 7.8.3 من CDD.
    • دعم واحد أو كليهما من معدلات أخذ العينات البالغة 44100 أو 48000 بدون مرشحات تمرير النطاق أو الحواف.
  • تم تعطيل التأثيرات/المعالجة المسبقة بشكل افتراضي

من أمثلة ضبط التأثيرات المختلفة لمصادر مختلفة ما يلي:

  • مزيل الضجة
    • تم ضبطه لقمع ضوضاء الرياح CAMCORDER
    • تم ضبطه من أجل مانع الضوضاء الثابت لـ VOICE_COMMUNICATION
  • السيطرة التلقائية
    • تم ضبطه للتحدث عن قرب لـ VOICE_COMMUNICATION وميكروفون الهاتف الرئيسي
    • تم ضبطه للحديث البعيد CAMCORDER

موارد

لمزيد من المعلومات، راجع المصادر التالية: