Audio Hardware Abstraction Layer (HAL) ของ Android จะเชื่อมต่อ API ของเฟรมเวิร์กที่เจาะจงด้านเสียงในระดับที่สูงกว่า
เข้ากับ
android.media
ไดรเวอร์และฮาร์ดแวร์เสียงพื้นฐาน HAL เสียงจะกำหนดอินเทอร์เฟซมาตรฐานที่บริการเสียงเรียกใช้ ต้องติดตั้งใช้งาน HAL เสียงเพื่อให้ฮาร์ดแวร์เสียงทำงานได้อย่างถูกต้อง
หน้านี้จะแสดงภาพรวมของ HAL เสียง รวมถึงรายละเอียดของ API และข้อกำหนดในการใช้งาน
อินเทอร์เฟซ HAL ของเสียง
ตั้งแต่ Android 14 เป็นต้นไป อินเทอร์เฟซ Audio HAL จะ กำหนดโดยใช้ AIDL สำหรับเวอร์ชันที่ผ่านมา อินเทอร์เฟซ Audio HAL จะกำหนดโดยใช้ HIDL ขอแนะนำให้พาร์ทเนอร์และผู้ให้บริการ SoC นำ HAL ของเสียงไปใช้ใหม่เพื่อจัดเตรียมอินเทอร์เฟซ AIDL
API ของ HAL ใหม่สำหรับฟีเจอร์ที่เพิ่มใน Android 14 ขึ้นไปจะรองรับเฉพาะการใช้งานอินเทอร์เฟซ AIDL เท่านั้น ตั้งแต่ Android 14 เป็นต้นไป จะไม่มีการเพิ่ม API ใหม่ในการ ใช้งาน HIDL
การเปลี่ยนไปใช้ AIDL รวมถึงการเลิกใช้งานและนำการรองรับ HAL เสียงเวอร์ชันหลักก่อนหน้าออกจะช่วยเพิ่มพื้นที่ว่างในดิสก์และ RAM ในอุปกรณ์ ซึ่งจะช่วยให้ UX ราบรื่นขึ้นและช่วยให้ผู้ใช้ปลายทางได้ใช้ฟีเจอร์ใหม่ๆ ที่ผู้ใช้มองเห็น
ดูข้อมูลเพิ่มเติมเกี่ยวกับความแตกต่างระหว่าง AIDL และ HIDL Audio HAL ได้ที่การเปรียบเทียบ AIDL และ HIDL Audio HAL
API ของ HAL เสียง
HAL เสียงมี API ต่อไปนี้
- Core HAL เป็น API หลักที่ AudioFlinger ใช้เพื่อเล่นเสียงและควบคุม การกำหนดเส้นทางเสียง
เฟรมเวิร์กเอฟเฟกต์ใช้ Effects HAL API เพื่อควบคุมเอฟเฟกต์เสียง นอกจากนี้ คุณยังกำหนดค่าเอฟเฟกต์การประมวลผลเบื้องต้น เช่น การควบคุมอัตราขยายและระบบลดเสียงรบกวนผ่าน Effects HAL API ได้ด้วย
Common HAL API เป็นไลบรารีของประเภทข้อมูลทั่วไปที่ใช้โดย Core และ Effects HAL API Common HAL ไม่มีอินเทอร์เฟซและไม่มีการทดสอบ VTS ที่เกี่ยวข้องเนื่องจากกำหนดเฉพาะโครงสร้างข้อมูล
ดูรายละเอียดเฉพาะที่เกี่ยวข้องกับ AIDL และ HIDL ตามลำดับได้ที่ AIDL Audio HAL และ HIDL Audio HAL
ข้อกำหนด
นอกเหนือจากการติดตั้งใช้งาน HAL เสียงและการสร้างไฟล์กำหนดค่านโยบายเสียง แล้ว คุณต้องปฏิบัติตามข้อกำหนด HAL ต่อไปนี้ด้วย
หากโปรไฟล์อินพุตรองรับการบันทึกสำหรับทริกเกอร์เสียง (บันทึกจากบัฟเฟอร์ DSP ของคำสั่งเปิด) การใช้งานต้องรองรับจำนวนสตรีมที่ใช้งานอยู่ในโปรไฟล์นี้ซึ่งสอดคล้องกับจำนวนเซสชันพร้อมกันที่ HAL ของทริกเกอร์เสียงรองรับ
การทำงานพร้อมกันของ TX การโทรด้วยเสียงและการจับภาพจากโปรเซสเซอร์ของแอปตามที่ระบุไว้ในหน้าการจับภาพพร้อมกัน