버전: 1.3
최종 업데이트: 2024년 9월 6일
범례
제품 동사 | 개발 작업 |
---|---|
'MUST' | 필수 제품 요구사항 |
'SHOULD' | 추천(선택사항) |
'MAY' | 참고사항 |
개요
이 문서에서는 ChromeOS 호환 USB+블루투스 스피커 마이크가 충족해야 하는 요구사항을 설명합니다. 이 사양은 WWCB 제품 또는 Chromebook과 함께 설계 및 인증된 제품에는 적용되지 않습니다.
USB
보안
2.4GHz 무선 동글
- 2.4GHz 무선 기기는 상자에 포함된 수신기(dongle)와만 자동 페어링됩니다.
- 헤드셋을 페어링하려면 기기에서 또는 앱을 통해 사용자의 작업이 필요합니다. 다른 수신기와 연결하거나 새 헤드셋을 기존 수신기와 페어링합니다.
- 앱에서 헤드셋/수신기 페어링을 변경해야 하는 경우 앱은 확장 프로그램을 통해 ChromeOS에서 실행되어야 합니다. 앱이 WebUSB/WebHID를 사용하는 웹 앱일 수도 있습니다.
- 페어링이 확장 프로그램을 통해 구현된 경우 확장 프로그램은 USB 포트에 만 액세스할 수 있어야 합니다. 콘텐츠 스크립트는 명시적으로 허용되지 않습니다.
펌웨어 및 커넥터
- 헤드셋은 올바른 오디오 인터페이스가 있는 오디오 기기로 선언해야 합니다.
(0x01) 설명자입니다.
- 입력과 출력 모두에 해당하는 설명어가 하나 있어야 합니다.
터미널에 연결합니다.
- USB 오디오 등급(UAC) 단말기 유형을 보고하는 것이 좋습니다.
- 헤드셋(0x0402)
- SpeakerPhone (0x0403-0x0405) 에서 자세한 내용을 확인하실 수 있습니다.
- USB 오디오 등급(UAC) 단말기 유형을 보고하는 것이 좋습니다.
- 입력과 출력 모두에 해당하는 설명어가 하나 있어야 합니다.
터미널에 연결합니다.
- 버튼이 있는 경우 HID로 선언해야 합니다.
- 헤드셋이 WWCB 펌웨어 및 커넥터를 충족해야 합니다. 요구사항을 충족하는 방법을 안내합니다.
소프트웨어
형식
오디오 형식을 참고하세요.
기기의 입력 및 출력 오디오 인터페이스 설명자가 모두 있습니다.
오디오 인터페이스 설명자 예
Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 0 iInterface 0
입력과 출력의 샘플링 레이트가 다른 경우 기기는
동시에 다른 샘플링 레이트에서 재생과 캡처를 지원할 수 있어야 합니다.
그렇지 않으면 기기가 AudioStreaming에 동일한 값을 반영해야 합니다.
인터페이스 설명자 -> tSamFreq
48k USB 오디오 출력 샘플링 레이트의 예
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
44.1k USB 오디오 입력 샘플링 레이트의 예
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 이벤트의 경우 한 번에 하나의 이벤트만 전송할 수 있습니다.
- 올바른 이벤트 코드와 해당 이벤트 코드는
버튼을 눌렀을 때
- 예를 들어 볼륨을 올립니다. evtest는 볼륨 업 이벤트를 하나만 관찰할 수 있으며 코드는
KEY_VOLUME_UP
여야 합니다.
- 예를 들어 볼륨을 올립니다. evtest는 볼륨 업 이벤트를 하나만 관찰할 수 있으며 코드는
- 다음 기능을 제공하도록 설계된 인터페이스가 있는 경우 USB 주변기기가 해당 HID를 방출 또는 수신할 수 있도록 지원해야 합니다. USB.org HID에 따른 이벤트 사양을 참조하세요.
소비자 페이지(0x0c)
키 이름 | HID 사용 ID | 사용 유형 |
---|---|---|
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 사용 ID | 사용 유형 |
---|---|---|
후크 스위치 | 0x20 |
OOC |
벨소리 장치 | 0x9e |
OOC |
LED 페이지(0x08)
키 이름 | HID 사용 ID | 사용 유형 |
---|---|---|
음소거 | 0x09 |
OOC |
Off-Hook | 0x17 |
OOC |
벨소리 | 0x18 |
OOC |
잭 감지
USB 기기가 USB 오디오 클래스 (UAC)를 지원하지 않는 경우 항상 출력 노드를 실행합니다. 그러나 USB 기기가 UAC를 지원하는 경우 시스템은 기기가 삽입될 때 3.5mm 오디오 잭을 올바르게 감지할 수 있습니다.
- CrOS는 3.5mm 잭에 인기척 감지를 사용해야 함 <ph type="x-smartling-placeholder">
일반 블루투스 요구사항
ChromeOS 호환 - 블루투스 사양을 참고하세요.
오디오 형식
재생 | 녹화 | |
---|---|---|
샘플링 레이트 | 16kHz 이상 | 16kHz 이상 |
형식 | S16_LE | S16_LE |
- 채널 번호와 구성이 정확해야 합니다.
- 헤드셋에서 지원한다고 선언하는 모든 샘플링 레이트가 올바르게 작동해야 합니다.
- 측정된 비율과 샘플링 비율 간의 편차는 0.1% 이하여야 합니다.
- 측정된 비율의 선형 회귀에 대한 표준 오차는 < 30.
헤드셋이 다른 샘플링 레이트에서 재생 또는 캡처를 지원해야 합니다. 지원합니다
예를 들어 44.1kHz 미만에서 오디오를 재생하지만 음성은 48kHz 미만에서 캡처합니다. 동시에 사용할 수 있습니다.
- 그러지 않으면 ChromeOS에서 시스템 측에서 이를 방지하기 위해 특정 구성 파일을 추가해야 합니다.
오디오 품질
Capture Path - Mute
- 사용자가 오디오 기기를 음소거할 수 있는 인터페이스가 있는 경우
<ph type="x-smartling-placeholder">
- </ph>
- 다음에 영향을 받지 않는 방식으로 음소거 상태를 유지합니다.
<ph type="x-smartling-placeholder">
- </ph>
- 기기 열기 및 닫기
- 다른 입력 기기로 전환합니다.
오디오 지연 시간
지연 시간
- 출력 지연 시간
<ph type="x-smartling-placeholder">
- </ph>
- 오디오 재생은 재생을 시작하는 사용자 작업 후 500밀리초 이내에 시작되어야 합니다.
- 기기 OEM이 이 요구사항을 충족하지 못할 때 에코가 발생하지 않는다고 입증할 수 있는 경우 면제를 요청할 수 있습니다.
- 오디오 재생은 재생을 시작하는 사용자 작업 후 500밀리초 이내에 시작되어야 합니다.
A/V 동기화
- 오디오 재생은 동영상 재생과 동기화되어야 합니다. 오디오 재생이 동영상보다 25밀리초(ms)까지 앞설 수 있고 95밀리초(ms)까지 뒤처질 수 있습니다.
업데이트 기록
날짜 | 버전 | 참고 |
---|---|---|
2024-09-06 | 1.3 | ChromeOS 호환 사양이 파생되었습니다. 최초 파트너 사이트 게시 |
2022-09-14 | 1.2 | v1.2로 업데이트되었습니다. |
2022-08-19 | 1.1 | v1.1로 업데이트되었습니다. |
2022-08-18 | 1.0 | 관련 WWCB 사양이 생성되었습니다. |