กำหนดค่าเอฟเฟกต์การประมวลผลล่วงหน้า

รุ่น Android 10 ประกอบด้วย ข้อกำหนดในการจับภาพด้วย VOICE_COMMUNICATION

  • การใช้งานควรมีตัวตัดเสียงสะท้อน (AEC) ในเส้นทางการบันทึกเมื่อ การจับภาพกับ VOICE_COMMUNICATION
  • หากระบุ AEC ก็จะต้องค้นหาและควบคุมได้ผ่านทาง SDK API AcousticEchoCanceler

แพลตฟอร์ม Android มีเอฟเฟกต์เสียงในอุปกรณ์ที่รองรับใน audiofx ที่นักพัฒนาแอปเข้าถึงได้ ตัวอย่างเช่น Nexus 10 รองรับเอฟเฟกต์การประมวลผลล่วงหน้าต่อไปนี้

จับคู่กับอินสแตนซ์ AudioSource

เอฟเฟกต์การประมวลผลล่วงหน้าจะจับคู่กับโหมดกรณีการใช้งานซึ่ง มีการขอให้ประมวลผลล่วงหน้า ในการพัฒนาแอป Android เราจะเรียกว่า Use Case เป็นอินสแตนซ์ 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 รายการได้รับและปล่อยเซสชันเมื่อสร้างและทำลาย การเปิดใช้งานเอฟเฟ็กต์ (เช่น ตัวเพิ่มความดัง) ให้คงอยู่ตลอดช่วงเวลา เซสชัน

ตัวอย่างต่อไปนี้เปิดใช้การประมวลผลข้อมูลล่วงหน้าสำหรับ VoIP อินสแตนซ์ AudioSource และกล้องวิดีโอ 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 dB) ตั้งแต่ 100 Hz ถึง 4 kHz
  • การกำหนดค่า Close-Talk: 90 dB SPL อ่าน RMS เป็น 2500 (ตัวอย่าง 16 บิต)
  • วัดระดับเป็นเส้นตรงตั้งแต่ -18 dB ถึง +12 dB สัมพัทธ์กับ 90 dB SPL
  • THD < 1% (90 dB SPL ในช่วง 100 ถึง 4000 Hz)
  • ข้อกำหนดด้านการอยู่ใกล้อัลตราซาวด์ (สำหรับการทดสอบ โปรดดู ระยะใกล้อัลตราซาวด์ การทดสอบ)
    • การรองรับ SUPPORT_PROPERTY_MIC_NEAR_ULTRASOUND ตามที่กำหนดไว้ในส่วน 7.8.3 ของ CDD
    • รองรับอัตราการสุ่มตัวอย่าง 44100 หรือ 48000 รายการใดรายการหนึ่งหรือทั้งสองแบบที่ไม่มีแบนด์พาส หรือ ของการลบรอยหยัก
  • เอฟเฟกต์/การประมวลผลล่วงหน้าถูกปิดใช้โดยค่าเริ่มต้น

ตัวอย่างของการปรับแต่งเอฟเฟกต์ต่างๆ สำหรับแหล่งที่มาต่างๆ ได้แก่

  • ตัวลดเสียงรบกวน
    • ปรับแต่งเพื่อตัดเสียงจากลมสำหรับ CAMCORDER
    • ปรับแต่งเพื่อตัดเสียงรบกวนเมื่ออยู่กับที่สำหรับ VOICE_COMMUNICATION
  • การควบคุมค่าเกนอัตโนมัติ
    • ปรับแต่งเพื่อพูดคุยแบบใกล้ชิดสำหรับ VOICE_COMMUNICATION และโทรศัพท์หลัก ไมค์
    • ได้รับการแจ้งเตือนแบบระยะไกลสำหรับ CAMCORDER

แหล่งข้อมูล

ดูข้อมูลเพิ่มเติมได้ในแหล่งข้อมูลต่อไปนี้