Versione: 1.3
Ultimo aggiornamento: 06-09-2024
Legenda
Verbo del prodotto | Azione di sviluppo |
---|---|
"MUST" | Requisito di prodotto obbligatorio |
"DEVE" | Suggerimento facoltativo |
"MAY" | Consigliabili |
Panoramica
Questo documento descrive i requisiti che deve soddisfare un altoparlante con microfono USB+Bluetooth compatibile con ChromeOS. Queste specifiche non sono per i prodotti WWCB né per un prodotto progettato e certificato insieme a un Chromebook.
USB
Sicurezza
Dongle wireless a 2,4 GHz
- Il dispositivo wireless a 2,4 GHz si accoppia automaticamente solo con il ricevitore (dongle) fornito con la confezione.
- Per accoppiare le cuffie con un altro ricevitore o accoppiare nuove cuffie con un ricevitore esistente è necessaria l'azione dell'utente (sul dispositivo o tramite un'app).
- Se è necessaria un'app per modificare l'accoppiamento di cuffie e ricevitori, l'app deve essere eseguita su ChromeOS, ad esempio tramite un'estensione. L'app può anche essere un'app web che utilizza WebUSB/WebHID.
- Se l'accoppiamento è implementato tramite un'estensione, quest'ultima deve solo avere accesso alle porte USB. Gli script di contenuti sono esplicitamente non consentiti.
Firmware e connettore
- L'auricolare deve essere dichiarato come dispositivo audio con un descrittore dell'interfaccia audio corretto (0x01).
- Deve essere presente un descrittore corrispondente sia per il terminale di input che per quello di output.
- Ti consigliamo di indicare il tipo di terminale USB Audio Class (UAC)
- Cuffie (0x0402)
- Vivavoce (0x0403-0x0405) .
- Ti consigliamo di indicare il tipo di terminale USB Audio Class (UAC)
- Deve essere presente un descrittore corrispondente sia per il terminale di input che per quello di output.
- Se ha un pulsante, deve essere dichiarato come HID.
- L'auricolare deve soddisfare i requisiti per il connettore e il firmware WWCB.
Software
Formato
Fai riferimento a Formato audio.
Il dispositivo deve avere descrittori di interfaccia audio sia in input che in output.
Esempio di descrittore di interfaccia audio
Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 0 iInterface 0
Se le frequenze di campionamento dell'input e dell'output sono diverse, il dispositivo deve essere
supportare contemporaneamente la riproduzione e l'acquisizione a frequenze di campionamento diverse.
In caso contrario, il dispositivo deve riflettere lo stesso valore in AudioStreaming
Interface Descriptor -> tSamFreq
.
Esempio di frequenza di campionamento dell'uscita audio USB a 48 KHz
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
Esempio di frequenza di campionamento dell'ingresso audio USB a 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
Codici HID
- Per ogni evento HID, può trasmettere un solo evento alla volta.
- Il codice evento corretto e il codice evento corrispondente devono essere ricevuti quando
quando viene premuto il pulsante.
- Ad esempio, aumenta il volume.
evtest
può osservare un solo evento di aumento del volume e il codice deve essere
KEY_VOLUME_UP
.
- Ad esempio, aumenta il volume.
evtest
può osservare un solo evento di aumento del volume e il codice deve essere
- Se esiste un'interfaccia progettata per fornire le seguenti funzionalità, La periferica USB deve supportare l'emissione o la ricezione dell'HID corrispondente eventi secondo USB.org HID la specifica del prodotto.
Pagina consumer (0x0c)
Nome chiave | ID utilizzo HID | Tipo di utilizzo |
---|---|---|
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 |
Pagina telefonia (0x0b)
Nome chiave | ID utilizzo HID | Tipo di utilizzo |
---|---|---|
Interruttore a gancio | 0x20 |
OOC |
Suoneria | 0x9e |
OOC |
Pagina LED (0x08)
Nome chiave | ID utilizzo HID | Tipo di utilizzo |
---|---|---|
Disattiva audio | 0x09 |
OOC |
Sganciato | 0x17 |
OOC |
Squilla | 0x18 |
OOC |
Rilevamento jack
Se un dispositivo USB non supporta USB Audio Class (UAC), verrà sempre visualizzata di output nella barra delle applicazioni di ChromeOS. Tuttavia, se il dispositivo USB supporta attiva, il sistema sarà in grado di rilevare correttamente un jack audio da 3,5 mm quando dispositivo inserito.
- CrOS: rilevamento della presenza di persone per jack da 3,5 mm
Requisiti Bluetooth generali
Fai riferimento a Compatibile con ChromeOS - Specifiche Bluetooth.
Formato audio
Riproduzione | Registrazione | |
---|---|---|
Frequenza di campionamento | ≥ 16 kHz | ≥ 16 kHz |
Formato | S16_LE | S16_LE |
- Il numero e la configurazione del canale devono essere corretti.
- Tutte le frequenze di campionamento dichiarate supportate dall'auricolare devono funzionare correttamente.
- La deviazione tra frequenza misurata e frequenza di campionamento deve essere ≤ 0,1% .
- L'errore standard per la regressione lineare della frequenza misurata deve essere inferiore a 30.
L'auricolare deve supportare la riproduzione o la registrazione a frequenze di campionamento diverse da quelle dichiarate.
Ad esempio, riproduci audio a meno di 44,1 kHz, ma acquisisci la voce a meno di 48 kHz contemporaneamente.
- In caso contrario, ChromeOS deve aggiungere un file di configurazione specifico per evitare che venga riscontrato sul lato del sistema.
Qualità audio
Percorso di acquisizione - Disattiva audio
- Se è presente un'interfaccia che consente agli utenti di disattivare l'audio del dispositivo, deve essere
- Mantieni lo stato di disattivazione dell'audio in modo che non venga influenzato da:
- Apertura e chiusura del dispositivo.
- Passaggio a un altro dispositivo di input.
Latenza audio
Latenza
- Latenza di output
- La riproduzione audio deve iniziare prima di 500 ms dopo un'azione dell'utente che
avvia la riproduzione.
- Può richiedere una rinuncia se il produttore del dispositivo è in grado di dimostrare che l'eco non viene introdotto quando non supera questo requisito.
- La riproduzione audio deve iniziare prima di 500 ms dopo un'azione dell'utente che
avvia la riproduzione.
Sincro A/V
- La riproduzione audio deve essere sincronizzata con la riproduzione video. La riproduzione audio può precedere il video di massimo 25 ms o seguirlo di massimo 95 ms.
Cronologia delle revisioni
Data | Versione | Note |
---|---|---|
2024-09-06 | 1.3 | Specifiche compatibili con ChromeOS derivate. Pubblicazione iniziale sul Sito partner. |
2022-09-14 | 1,2 | Aggiornamento alla versione 1.2. |
2022-08-19 | 1.1 | Aggiornato alla versione 1.1. |
2022-08-18 | 1,0 | È stata creata la specifica WWCB correlata. |