ใช้ได้กับ ChromeOS - ข้อมูลจำเพาะของชุดหูฟัง USB เวอร์ชัน 1.2

เวอร์ชัน: 1.2.1
อัปเดตล่าสุด: 14-06-2024

คำอธิบาย

คำกริยาผลิตภัณฑ์ การดำเนินการเพื่อการพัฒนา
"ต้อง" ข้อกำหนดผลิตภัณฑ์ที่จำเป็น
"ควร" คำแนะนำที่ไม่บังคับ
"พฤษภาคม" สิ่งที่แนะนำให้มี

ภาพรวม

เอกสารนี้อธิบายข้อกำหนดของชุดหูฟัง USB ที่เข้ากันได้กับ ChromeOS มาพบกัน ข้อกำหนดนี้ไม่ใช่สำหรับผลิตภัณฑ์ WWCB หรือสำหรับผลิตภัณฑ์ที่ออกแบบ และได้รับการรับรองร่วมกับ Chromebook

USB

ความปลอดภัย

ดองเกิลไร้สาย 2.4 GHz

  • อุปกรณ์ไร้สาย 2.4 GHz จะจับคู่กับตัวรับ (ดองเกิล) ที่ มาพร้อมกับกล่อง
  • ต้องมีการดำเนินการของผู้ใช้ (ในอุปกรณ์หรือผ่านแอป) เพื่อจับคู่ชุดหูฟัง กับตัวรับสัญญาณอื่น หรือจับคู่ชุดหูฟังใหม่กับตัวรับที่มีอยู่
  • หากจําเป็นต้องให้แอปเปลี่ยนการจับคู่ชุดหูฟัง/เครื่องรับ แอปจะต้องทํางาน ChromeOS เช่น ผ่านส่วนขยาย แอปยังสามารถเป็นเว็บแอปโดยใช้ WebUSB/WebHID
  • หากดำเนินการจับคู่ผ่านส่วนขยาย ส่วนขยายจะต้องเท่านั้น มีสิทธิ์เข้าถึงพอร์ต USB สคริปต์เนื้อหาไม่ได้รับอนุญาตอย่างชัดเจน

เฟิร์มแวร์และเครื่องมือเชื่อมต่อ

  • ต้องประกาศว่าชุดหูฟังเป็นอุปกรณ์เสียงที่มีอินเทอร์เฟซเสียงที่ถูกต้อง (0x01) ข้อบ่งชี้
    • ต้องมีตัวบ่งชี้ที่สอดคล้องกัน 1 ตัวสำหรับทั้งอินพุตและเอาต์พุต เครื่องปลายทาง
      • ขอแนะนำให้รายงานประเภทขั้วปลายสายไฟ USB Audio Class (UAC)
        • ชุดหูฟัง (0x0402)
        • SpeakerPhone (0x0403-0x0405) ที่ใช้เวลาเพียง 2 นาที
  • หากมีปุ่มใดก็ตาม จะต้องประกาศเป็น HID
  • ชุดหูฟังต้องเป็นไปตามเฟิร์มแวร์และเครื่องมือเชื่อมต่อ WWCB ข้อกำหนด

ซอฟต์แวร์

รูปแบบ

โปรดดูที่รูปแบบเสียง

สําหรับอุปกรณ์มีทั้งอินพุตและเอาต์พุต Audio Interface Descriptor

  • ตัวอย่าง Audio Interface Descriptor

    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0
      iInterface              0
    

หากอัตราการสุ่มตัวอย่างของอินพุตและเอาต์พุตแตกต่างกัน อุปกรณ์จะต้อง สามารถสนับสนุนการเล่นและจับภาพในอัตราการสุ่มตัวอย่างที่แตกต่างกันในเวลาเดียวกัน ไม่เช่นนั้น อุปกรณ์ต้องแสดงค่าเดียวกันใน AudioStreaming ตัวบอกอินเทอร์เฟซ -> tSamFreq

  • ตัวอย่างอัตราการสุ่มตัวอย่างเอาต์พุตเสียง USB 48 K

    AudioStreaming Interface Descriptor:
      bLength                11
      bDescriptorType        36
      bDescriptorSubtype      2 (FORMAT_TYPE)
      bFormatType             1 (FORMAT_TYPE_I)
      bNrChannels             2
      bSubframeSize           2
      bBitResolution         16
      bSamFreqType            1 Discrete
      tSamFreq[ 0]        48000
    Endpoint Descriptor:
      bLength                 9
      bDescriptorType         5
      bEndpointAddress     0x02  EP 2 OUT(Output)
      bmAttributes            9
        Transfer Type            Isochronous
        Synch Type               Adaptive
        Usage Type               Data
    
  • ตัวอย่างอัตราการสุ่มตัวอย่างอินพุตเสียง USB 44.1k

    AudioStreaming Interface Descriptor:
      bLength                11
      bDescriptorType        36
      bDescriptorSubtype      2 (FORMAT_TYPE)
      bFormatType             1 (FORMAT_TYPE_I)
      bNrChannels             2
      bSubframeSize           2
      bBitResolution         16
      bSamFreqType            1 Discrete
      tSamFreq[ 0]        44100
    Endpoint Descriptor:
      bLength                 9
      bDescriptorType         5
      bEndpointAddress     0x81  EP 1 In(Input)
      bmAttributes            9
        Transfer Type            Isochronous
        Synch Type               Adaptive
        Usage Type               Data
    

รหัส HID

  • สําหรับเหตุการณ์ HID แต่ละรายการ ระบบจะส่งได้เพียงครั้งละ 1 เหตุการณ์
  • คุณควรได้รับรหัสกิจกรรมที่ถูกต้องและรหัสกิจกรรมที่เกี่ยวข้องเมื่อ มีการกดปุ่ม
    • เช่น เพิ่มระดับเสียง evtest สังเกตการณ์การเพิ่มเสียงได้เพียงรายการเดียวเท่านั้นและโค้ดต้อง KEY_VOLUME_UP
  • หากมีอินเทอร์เฟซใดๆ ที่ออกแบบมาเพื่อให้มีฟังก์ชันการทำงานต่อไปนี้ อุปกรณ์ต่อพ่วง USB ต้องรองรับการปล่อยหรือรับ HID ที่สอดคล้องกัน เหตุการณ์ตาม USB.org HID ข้อกำหนดเฉพาะ
หน้าผู้บริโภค (0x0c)
ชื่อคีย์ รหัสการใช้งาน HID ประเภทการใช้งาน
KEY_PLAY 0x0b0 OOC
KEY_PAUSE 0x0b1 OOC
KEY_NEXTSONG 0x0b5 ระบบปฏิบัติการ OSC
KEY_PREVIOUSSONG 0x0b6 ระบบปฏิบัติการ OSC
KEY_STOPCD 0x0b7 ระบบปฏิบัติการ OSC
KEY_PLAYPAUSE 0x0cd ระบบปฏิบัติการ OSC
KEY_PREVIOUSSONG 0x0b6 ระบบปฏิบัติการ OSC
KEY_MUTE 0x0e2 OOC
KEY_VOLUMEUP 0x0e9 RTC
KEY_VOLUMEDOWN 0x0ea RTC
หน้าโทรศัพท์ (0x0b)
ชื่อคีย์ รหัสการใช้งาน HID ประเภทการใช้งาน
สวิตช์ตะขอเกี่ยว 0x20 OOC
เสียงเรียกเข้า 0x9e OOC
หน้า LED (0x08)
ชื่อคีย์ รหัสการใช้งาน HID ประเภทการใช้งาน
ปิดเสียง 0x09 OOC
นอกเรื่อง 0x17 OOC
ทำให้ส่งเสียง 0x18 OOC

การตรวจจับการชน

หากอุปกรณ์ USB ไม่รองรับ USB Audio Class (UAC) อุปกรณ์ดังกล่าวจะแสดง โหนดเอาต์พุตในถาดระบบ ChromeOS แต่ถ้าอุปกรณ์ USB สนับสนุน UAC จะสามารถตรวจพบช่องเสียบหูฟัง 3.5 มม. ได้อย่างถูกต้องเมื่อ เสียบอุปกรณ์แล้ว

  • CrOS ต้องใช้การตรวจหาบุคคลในบ้านสำหรับช่องเสียบ 3.5 มม.
    • ต้องดำเนินการตรวจหาส่วนแทรกผ่านรายการใดรายการหนึ่งต่อไปนี้

รูปแบบเสียง

การเล่น กำลังบันทึก
อัตราการสุ่มตัวอย่าง ≥ 16 kHz ≥ 16 kHz
รูปแบบ S16_LE S16_LE
  • หมายเลขช่องและการกำหนดค่าต้องถูกต้อง
  • อัตราการสุ่มตัวอย่างทั้งหมดที่ชุดหูฟังประกาศว่ารองรับต้องทำงานอย่างถูกต้อง
    • ค่าเบี่ยงเบนระหว่างอัตราที่วัดได้และอัตราการสุ่มตัวอย่างต้องเท่ากับ ≤ 0.1%
    • ข้อผิดพลาดมาตรฐานสำหรับการถดถอยเชิงเส้นของอัตราที่วัดได้ต้อง < 30.
  • ชุดหูฟังต้องรองรับการเล่นหรือจับภาพภายใต้อัตราการสุ่มตัวอย่างที่แตกต่างกัน ยืนยันที่จะสนับสนุน

    ตัวอย่างเช่น เล่นเสียงภายใต้ 44.1 kHz แต่บันทึกเสียงที่ไม่ถึง 48 kHz พร้อมกัน

    • มิฉะนั้น ChromeOS จะต้องเพิ่มไฟล์การกำหนดค่าที่เจาะจงลงใน ในฝั่งระบบ

คุณภาพเสียง

เส้นทางการบันทึก - ปิดเสียง

  • หากมีอินเทอร์เฟซสำหรับให้ผู้ใช้ปิดเสียงอุปกรณ์เสียง อุปกรณ์ดังกล่าวจะต้อง
      วันที่
    • คงสถานะการปิดเสียงไว้ในลักษณะที่ไม่ได้รับผลกระทบจากสิ่งต่อไปนี้
      • เปิดและปิดอุปกรณ์
      • การเปลี่ยนไปใช้อุปกรณ์อินพุตอื่น
  • หากผู้ใช้กดปุ่มปิดเสียงบนชุดหูฟังหรือ ChromeOS ต้องเปลี่ยนสถานะการปิดเสียง
  • หากสถานะการปิดเสียงมีการเปลี่ยนแปลง สัญญาณบอกสถานะปิดเสียง (เช่น LED) บน ชุดหูฟังต้องเปลี่ยน

เวลาในการตอบสนองของเสียง

เวลาในการตอบสนอง

  • เวลาในการตอบสนองของเอาต์พุต
    • การเล่นเสียงต้องเริ่มต้น ≤500 มิลลิวินาทีหลังจากการดำเนินการของผู้ใช้ เริ่มเล่น
      • อาจขอยกเว้นในกรณีที่อุปกรณ์ OEM พิสูจน์ได้ว่าไม่มีเสียงสะท้อน เมื่อไม่เป็นไปตามข้อกำหนดนี้

การซิงค์ A/V

  • การเล่นเสียงควรซิงโครไนซ์กับการเล่นวิดีโอ การเล่นเสียง อาจทำให้วิดีโอยาว ≤25 มิลลิวินาที หรือตามรอยวิดีโอประมาณ ≤95 มิลลิวินาที

ประวัติการแก้ไข

วันที่ เวอร์ชัน หมายเหตุ
14-06-2024 1.2.1 ได้ข้อมูลข้อมูลจำเพาะที่เข้ากันได้กับ ChromeOS การเผยแพร่ไซต์พาร์ทเนอร์ครั้งแรก
2022-09-01 1.2 ข้อกำหนดเกี่ยวกับ WWCB เวอร์ชัน 1.2 ที่เกี่ยวข้อง
2022-06-06 1.1 ข้อกำหนดเกี่ยวกับ WWCB เวอร์ชัน 1.1 ที่เกี่ยวข้อง
2020-09-21 1.0 สร้างข้อกำหนด WWCB ที่เกี่ยวข้องแล้ว