הגדרת אפקטים לעיבוד מראש

גרסת Android 10 כוללת את הדרישות הבאות לתיעוד באמצעות VOICE_COMMUNICATION.

  • בהטמעות צריך לספק ביטול הד אקוסטי (AEC) בנתיב הצילום כשמצלמים באמצעות VOICE_COMMUNICATION.
  • אם מספקים קובץ AEC, הוא צריך להיות גלוי ונשלט באמצעות AcousticEchoCanceler של SDK API.

פלטפורמת Android מספקת אפקטים קוליים במכשירים נתמכים בחבילה audiofx, שזמינה למפתחים גישה אליה. לדוגמה, ב-Nexus 10 יש תמיכה באפקטים הבאים של עיבוד מקדים:

התאמה למופעי AudioSource

ההשפעות של העיבוד המקדים מותאמות למצב התרחיש לדוגמה שבו מבקשים את העיבוד המקדים. בפיתוח אפליקציות ל-Android, תרחישים לדוגמה נקראים מכונות AudioSource, ומפתחי האפליקציות מבקשים להשתמש בהפשטה של AudioSource במקום במכשיר החומרה של האודיו בפועל. מנהל המדיניות של אודיו ב-Android ממפה מכונה של 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 מקבלות ומשחררות סשן כשיוצרים ומושמדות, כך שהאפקטים (כמו Loudness Enhancer) נשארים לאורך כל הסשן.

הדוגמה הבאה מפעילה עיבוד מראש למכונות VoIP AudioSource ו-Camcorder AudioSource. במסגרת הצהרה על ההגדרה AudioSource באופן הזה, ה-framework מבקש באופן אוטומטי מ-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 dB) מ-100 Hz עד 4 kHz
  • הגדרה לשיחת קרבה: 90 dB SPL קוראת RMS של 2500 (דגימות של 16 ביט)
  • רמת מעקב לינארית מ- -18 dB עד +12 dB ביחס ל- 90 dB SPL
  • THD < 1%‏ (90 dB SPL בטווח של 100 עד 4,000 Hz)
  • דרישות לשימוש באולטרסאונד קרוב (לבדיקה, ראו בדיקות של אולטרסאונד קרוב):
    • תמיכה ב-SUPPORT_PROPERTY_MIC_NEAR_ULTRASOUND כפי שמוגדר בקטע 7.8.3 ב-CDD.
    • תמיכה באחת משתי תדירות הדגימה 44100 או 48000, ללא מסנני תדרי מעבר או מסנני ביטול רעשי aliasing.
  • אפקטים/עיבוד מקדים מושבתים כברירת מחדל

דוגמאות לכוונון של אפקטים שונים במקורות שונים:

  • הפחתת רעשים
    • התאמה של ביטול רעשי הרוח עבור CAMCORDER
    • התאמה של סינון הרעשים לתנועה סטטית עבור VOICE_COMMUNICATION
  • בקרת רווח אוטומטית
    • מכוון לדיבור קרוב עבור VOICE_COMMUNICATION והמיקרופון הראשי של הטלפון
    • מכווננים לדיבור מרחוק עבור CAMCORDER

משאבים

מידע נוסף זמין במקורות הבאים: