ติดตั้งใช้งานเสียงรอบทิศทางและการติดตามการเคลื่อนไหวของศีรษะที่มีคุณภาพสูง

Android 13 เพิ่มการรองรับเสียงรอบทิศทางด้วย API ที่ทำให้นักพัฒนาแอปทราบว่าการใช้ โทรศัพท์ร่วมกันในปัจจุบัน การติดตั้ง ชุดหูฟังที่เชื่อมต่อ และการตั้งค่าของผู้ใช้ช่วยให้สามารถเล่น เนื้อหาเสียงแบบหลายช่องได้สมจริง

OEM สามารถสร้างเอฟเฟกต์เสียงรอบทิศทาง พร้อมรองรับการติดตามการเคลื่อนไหวของศีรษะด้วย ระดับประสิทธิภาพและเวลาในการตอบสนองที่ต้องการ โดยใช้ไปป์ไลน์เสียงแบบใหม่ สถาปัตยกรรมและการผสานรวมเฟรมเวิร์กเซ็นเซอร์ โปรโตคอล HID ระบุวิธีการ ติดอุปกรณ์ติดตามการเคลื่อนไหวของศีรษะผ่านบลูทูธและทำให้ใช้เป็น HID อุปกรณ์ผ่านเฟรมเวิร์กเซ็นเซอร์ของ Android ดูเสียงรอบทิศทางและการติดตามการเคลื่อนไหวของศีรษะ เพื่อดูข้อกำหนดและการตรวจสอบเพิ่มเติม

หลักเกณฑ์ในหน้านี้จะใช้กับโซลูชันเสียงรอบทิศทางที่ใช้ API เสียงรอบทิศทางและสถาปัตยกรรมเสียงใหม่ๆ บนโทรศัพท์ที่ใช้ Android Android 13 ขึ้นไปและชุดหูฟังที่เข้ากันได้กับ เซ็นเซอร์ติดตามการเคลื่อนไหวของศีรษะ

หลักเกณฑ์สำหรับการใช้โหมดเสียงรอบทิศทางแบบไดนามิกและแบบคงที่

เสียงรอบทิศทางแบบคงที่ไม่จำเป็นต้องมีการติดตามการเคลื่อนไหวของศีรษะ จึงใช้ที่เฉพาะเจาะจงมาก ไม่จำเป็นต้องมีฟังก์ชันการทำงานในชุดหูฟัง ชุดหูฟังแบบมีสายและไร้สายทั้งหมดรองรับ เสียงรอบทิศทางแบบคงที่

การใช้งาน API

OEM ต้องใช้ Spatializer เปิดตัวใน Android 12 การติดตั้งใช้งานต้องผ่านการทดสอบ CTS แนะนำสำหรับชั้นเรียน Spatializer

การนำ API มาใช้อย่างมีประสิทธิภาพช่วยให้นักพัฒนาแอป โดยเฉพาะในสื่อ บริการสตรีมมิงสามารถพึ่งพาพฤติกรรมที่สอดคล้องกันทั่วทั้งระบบนิเวศและ เลือกเนื้อหาที่ดีที่สุดตามความสามารถของอุปกรณ์ การแสดงผลปัจจุบัน บริบท และตัวเลือกของผู้ใช้

ส่วนติดต่อผู้ใช้

หลังจากใช้ Spatializer ให้ตรวจสอบว่า UI ของคุณมีลักษณะการทำงานดังต่อไปนี้

  • เมื่อมีการจับคู่ชุดหูฟังที่เปิดเสียงรอบทิศทาง อุปกรณ์บลูทูธ การตั้งค่าสำหรับชุดหูฟังนี้จะแสดงการเปิด/ปิดเสียงรอบทิศทาง ดังนี้

    UI เสียงรอบทิศทาง

    รูปที่ 1 การตั้งค่าเสียงรอบทิศทาง

  • การตั้งค่าจะใช้ได้เมื่อไม่ได้เชื่อมต่อชุดหูฟัง

  • สถานะเริ่มต้นสำหรับเสียงรอบทิศทางหลังจากจับคู่ชุดหูฟังครั้งแรกคือ ตั้งค่าเป็นเปิดใช้

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

ลักษณะการทำงาน

รูปแบบเสียง

รูปแบบเสียงต่อไปนี้ต้องแสดงผลด้วยเอฟเฟกต์กระจายเสียงเมื่อ มีการเปิดใช้เสียงรอบทิศทางและอุปกรณ์แสดงผลเป็นแบบใช้สายหรือบลูทูธ ชุดหูฟัง:

  • AAC 5.1 ช่อง
  • PCM แบบ Raw, 5.1 แชนเนล

เพื่อให้ผู้ใช้ได้รับประสบการณ์ที่ดีขึ้น เราขอแนะนำให้รองรับวิธีการต่อไปนี้ การกำหนดค่ารูปแบบ/ช่องทาง:

  • Dolby Digital Plus
  • แชนเนล 5.1.2, 7.1, 7.1.2, 7.1.4

การเล่นเนื้อหาสเตอริโอ

เนื้อหาสเตอริโอต้องไม่แสดงผลผ่านเครื่องมือเอฟเฟกต์กระจายเสียง แม้ หากเปิดใช้เสียงรอบทิศทาง หากการใช้งานอนุญาตให้ใช้เนื้อหาสเตอริโอ ข้อมูลเชิงพื้นที่ ก็ต้องนำเสนอ UI ที่กำหนดเองที่ให้ผู้ใช้เปิดฟีเจอร์นี้ได้ เปิดหรือปิดได้โดยง่าย เมื่อเปิดใช้งานเสียงรอบทิศทาง ต้องสามารถ การเปลี่ยนระหว่างการเล่นเนื้อหาแบบหลายช่องที่มีการแบ่งพื้นที่เป็น เนื้อหาสเตอริโอที่ไม่ใช่เชิงพื้นที่โดยไม่ต้องมีการเปลี่ยนแปลงใดๆ ในการตั้งค่าของผู้ใช้หรือ การเชื่อมต่อชุดหูฟังใหม่หรือการกำหนดค่าใหม่ การเปลี่ยนระหว่างเสียงรอบทิศทาง เนื้อหาและเนื้อหาสเตอริโอจะต้องมีการหยุดชะงักของเสียงน้อยที่สุด

การเปลี่ยนกรณีการใช้งานและการเกิดขึ้นพร้อมกัน

มีกรณีการใช้งานพิเศษดังนี้

  • การแจ้งเตือนจะต้องผสมกับเนื้อหาเสียงรอบทิศทาง ในลักษณะเดียวกับ เนื้อหาเสียงที่ไม่ใช่เชิงพื้นที่
  • ต้องอนุญาตให้ใช้เสียงเรียกเข้าร่วมกับเนื้อหาเสียงรอบทิศทาง อย่างไรก็ตาม โดยค่าเริ่มต้น กลไกการโฟกัสเสียงจะหยุดเนื้อหาเสียงรอบทิศทางชั่วคราวเมื่อ มีเสียงเรียกเข้า
  • เมื่อรับสายหรือโทรออก หรือการประชุมทางวิดีโอ การเล่นเสียงต้องหยุดชั่วคราว การเล่นเสียงรอบทิศทางต้องกลับมาทำงานอีกครั้งตามเดิม การตั้งค่าเสียงรอบทิศทางเมื่อการโทรสิ้นสุดลง การกำหนดค่าเส้นทางเสียงใหม่ การเปลี่ยนจากโหมดเสียงรอบทิศทางเป็นโหมดสนทนาต้องเกิดขึ้นอย่างรวดเร็ว ได้อย่างราบรื่นพอ จึงไม่มีผลกระทบต่อประสบการณ์การโทร

การแสดงผลผ่านลำโพง

ไม่สามารถรองรับเสียงรอบทิศทางผ่านลำโพงหรือโหมดข้ามเสียงพูด ต้องระบุ

หลักเกณฑ์การใช้งานการติดตามการเคลื่อนไหวของศีรษะ

ส่วนนี้เน้นที่เสียงรอบทิศทางแบบไดนามิก ซึ่งมีชุดหูฟังเฉพาะ

ส่วนติดต่อผู้ใช้

เมื่อใช้งานและจับคู่ชุดหูฟังที่เปิดเสียงรอบทิศทาง ตรวจสอบ UI มีลักษณะการทำงานดังต่อไปนี้

  • ในการตั้งค่าอุปกรณ์บลูทูธ เมื่อการตั้งค่าเสียงรอบทิศทางสำหรับ เปิดใช้ชุดหูฟังแล้ว การตั้งค่าการติดตามการเคลื่อนไหวของศีรษะจะปรากฏภายใต้ เสียงรอบทิศทาง

    UI

    รูปที่ 2 เสียงรอบทิศทางและการตั้งค่าการติดตามศีรษะ

  • มองไม่เห็นการตั้งค่าการติดตามศีรษะเมื่อปิดใช้เสียงรอบทิศทาง

  • สถานะเริ่มต้นสำหรับการติดตามการเคลื่อนไหวของศีรษะหลังจากจับคู่ชุดหูฟังครั้งแรกคือ ตั้งค่าเป็นเปิดใช้

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

ลักษณะการทำงาน

การรายงานท่าทางของศีรษะ

  • ข้อมูลการโพสศีรษะในพิกัด x, y และ z ซึ่งส่งจากชุดหูฟังไปยัง อุปกรณ์ Android ต้องแสดงให้เห็นการเคลื่อนไหวศีรษะของผู้ใช้อย่างรวดเร็ว และ ได้อย่างถูกต้อง
  • การรายงานท่าทางของศีรษะบนลิงก์บลูทูธต้องเป็นไปตามโปรโตคอลที่ระบุไว้ ผ่าน HID
  • ชุดหูฟังต้องส่งข้อมูลการติดตามศีรษะไปยังโทรศัพท์ Android เฉพาะเมื่อผู้ใช้เปิดใช้การติดตามการเคลื่อนไหวของศีรษะในการตั้งค่าอุปกรณ์บลูทูธ UI

ประสิทธิภาพ

ตอบสนองช้า

เวลาในการตอบสนองของการติดตามศีรษะหมายถึงระยะเวลาที่ใช้นับตั้งแต่การขยับศีรษะ ที่บันทึกโดยหน่วยวัดความเฉื่อย (IMU) ไปยังตัวแปลงสัญญาณของหูฟัง การตรวจจับการเปลี่ยนแปลงของเสียงที่เกิดจากการเคลื่อนไหวนี้ เวลาในการตอบสนองของการติดตามส่วนหัว ต้องไม่เกิน 150 มิลลิวินาที

อัตราการรายงานท่าทางศีรษะ

เมื่อใช้งานการติดตามการเคลื่อนไหวของศีรษะ ชุดหูฟังต้องรายงานท่าทางของศีรษะบน ระยะเวลาที่แนะนำคือประมาณ 20 มิลลิวินาที เพื่อหลีกเลี่ยงการทริกเกอร์อัปเดต ตรรกะการตรวจจับการป้อนข้อมูลบนโทรศัพท์ระหว่างที่สัญญาณกวนการส่งข้อมูลของ บลูทูธ เวลาสูงสุดระหว่างการอัปเดต 2 รายการต้องไม่เกิน 40 มิลลิวินาที

การเพิ่มประสิทธิภาพพลังงาน

เพื่อเพิ่มประสิทธิภาพการทำงาน เราขอแนะนำให้ใช้งาน การสลับตัวแปลงรหัสบลูทูธและ กลไกการเลือกโหมดเวลาในการตอบสนองโดย HAL เสียง และ HAL เสียงบลูทูธ อินเทอร์เฟซ

มีการใช้ AOSP ของเฟรมเวิร์กเสียงและสแต็กบลูทูธแล้ว รองรับสัญญาณเพื่อควบคุมการสลับตัวแปลงรหัส หากการติดตั้งใช้งานของ OEM ใช้ HAL เสียงหลักสำหรับเสียงบลูทูธ หรือที่เรียกว่าโหมดลดภาระของตัวแปลงรหัส OEM ต้องตรวจสอบว่า HAL เสียงถ่ายทอดสัญญาณเหล่านั้นระหว่าง HAL ของเสียง และสแต็กบลูทูธ

การสลับตัวแปลงรหัส

เมื่อเปิดเสียงรอบทิศทางแบบไดนามิกและการติดตามการเคลื่อนไหวของศีรษะ ให้ใช้ตัวแปลงรหัสที่มีเวลาในการตอบสนองต่ำ เช่น Opus เมื่อเปิดเนื้อหาที่ไม่ใช่เชิงพื้นที่ เนื้อหาเสียง ให้ใช้ตัวแปลงรหัสพลังงานต่ำ เช่น Advanced Audio Coding (AAC)

ปฏิบัติตามกฎเหล่านี้ระหว่างการสลับตัวแปลงรหัส:

  • ติดตามเฉพาะกิจกรรมในสตรีมเอาต์พุต HAL เสียงต่อไปนี้
    • เอาต์พุตกระจายเสียงเฉพาะ
    • สตรีมสื่อที่เจาะจง เช่น บัฟเฟอร์ดีปหรือออฟโหลดที่บีบอัด เล่น
  • เมื่อสตรีมที่เกี่ยวข้องทั้งหมดไม่มีการใช้งาน และสตรีมกระจายเสียงเริ่มต้น ให้เริ่ม สตรีมบลูทูธที่มีการตั้งค่า isLowLatency เป็น true เพื่อระบุตัวแปลงรหัสที่มีเวลาในการตอบสนองต่ำ

  • เมื่อสตรีมที่เกี่ยวข้องทั้งหมดไม่มีการใช้งานและสตรีมสื่อเริ่มต้นขึ้น ให้เริ่มต้น สตรีมบลูทูธที่มีการตั้งค่า isLowLatency เป็น false เพื่อระบุตัวแปลงรหัสพลังงานต่ำ

  • ถ้าสตรีมสื่อทำงานอยู่และสตรีมกระจายเสียงเริ่มต้น ให้รีสตาร์ท สตรีมบลูทูธที่มีการตั้งค่า isLowLatency เป็น true

ในส่วนของชุดหูฟัง ชุดหูฟังต้องรองรับทั้งเวลาในการตอบสนองต่ำและพลังงานต่ำ ตัวถอดรหัสและติดตั้งโปรโตคอลการเลือกตัวแปลงรหัสมาตรฐาน

การปรับโหมดเวลาในการตอบสนอง

การปรับโหมดเวลาในการตอบสนองจะเกิดขึ้นเมื่อเลือกตัวแปลงรหัสที่มีเวลาในการตอบสนองต่ำ

การปรับโหมดเวลาในการตอบสนองจะใช้ ขึ้นอยู่กับว่าการติดตามการเคลื่อนไหวของศีรษะเปิดหรือปิดอยู่ กลไกที่ใช้ได้เพื่อลดหรือเพิ่มเวลาในการตอบสนองเพื่อให้ได้ประสิทธิภาพสูงสุด ความต่างระหว่างเวลาในการตอบสนอง พลังงาน และคุณภาพเสียง เมื่อเสียงรอบทิศทางคือ เปิดใช้อยู่และมีการเปิดใช้การติดตามการเคลื่อนไหวของศีรษะ โดยจะเลือกโหมดเวลาในการตอบสนองต่ำ วันและเวลา เปิดใช้เสียงรอบทิศทางและปิดใช้การติดตามการเคลื่อนไหวของศีรษะ โหมดเวลาในการตอบสนองฟรี ไว้ การปรับเวลาในการตอบสนองช่วยประหยัดพลังงานได้อย่างมากและเพิ่ม ความทนทานของลิงก์เสียงบลูทูธเมื่อเฉพาะเสียงรอบทิศทางแบบคงที่ ที่ขอ กลไกการปรับเวลาในการตอบสนองที่ใช้กันมากที่สุดคือการลดหรือ ของขนาดบัฟเฟอร์ Jitter ในชุดหูฟังบลูทูธ