Wersja: 1.3
Ostatnia aktualizacja: 6 września 2024 r.
Legenda
| Czasownik związany z produktem | Działanie związane z rozwojem |
|---|---|
| „MUSI” | Wymagania dotyczące produktu |
| „POWINNO” | Opcjonalna rekomendacja |
| „MAJ” | Przydatne |
Omówienie
Ten dokument opisuje wymagania dotyczące głośnika z mikrofonem USB + Bluetooth zgodnego z ChromeOS. Ta specyfikacja nie dotyczy produktów WWCB ani zaprojektowano i certyfikowanym razem z Chromebookiem.
USB
Bezpieczeństwo
Bezprzewodowa wtyczka do synchronizacji 2,4 GHz
- Urządzenie bezprzewodowe 2,4 GHz automatycznie paruje się tylko z odbiornikiem (kluczem sprzętowym), który jest dostarczany z pudełkiem.
- Aby sparować zestaw słuchawkowy z innym odbiornikiem lub sparować nowy zestaw słuchawkowy z dotychczasowym odbiornikiem, użytkownik musi wykonać odpowiednie działanie (na urządzeniu lub w aplikacji).
- Jeśli do zmiany parowania słuchawek/odbiorników wymagana jest aplikacja, musi ona działać w ChromeOS, np. w rozszerzeniu. Może to być też aplikacja internetowa wykorzystująca WebUSB/WebHID.
- Jeśli parowanie jest implementowane za pomocą rozszerzenia, może ono być używane tylko i mają dostęp do portów USB. Skrypty treści są wyraźnie zabronione.
Oprogramowanie i oprogramowanie sprzęgające
- Zestaw słuchawkowy musi być zadeklarowany jako urządzenie audio z prawidłowym interfejsem audio
(0x01).
- Dla terminala wejściowego i wyjściowego musi być jeden odpowiedni deskryptor.
- Zaleca się zgłaszanie typu złącza USB Audio Class (UAC)
- Zestaw słuchawkowy (0x0402)
- SpeakerPhone (0x0403-0x0405) .
- Zaleca się zgłaszanie typu złącza USB Audio Class (UAC)
- Dla terminala wejściowego i wyjściowego musi być jeden odpowiedni deskryptor.
- Jeśli zawiera przycisk, musi być zadeklarowany jako HID.
- Zestaw słuchawkowy musi spełniać wymagania dotyczące oprogramowania i złącza WWCB.
Oprogramowanie
Format
Zapoznaj się z Formatem audio.
Urządzenie ma zarówno wejście, jak i wyjściowy deskryptor interfejsu audio.
Przykład deskryptora interfejsu audio
Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 0 iInterface 0
Jeśli częstotliwości próbkowania wejścia i wyjścia są różne, urządzenie musi obsługiwać odtwarzanie i przechwytywanie z różnymi częstotliwościami próbkowania w tym samym czasie.
W przeciwnym razie urządzenie musi odzwierciedlać tę samą wartość w AudioStreaming
Interface Descriptor -> tSamFreq.
Przykład częstotliwości próbkowania wyjściowego audio USB (48 kB)
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 DataPrzykład częstotliwości próbkowania wejściowego dźwięku przez USB (44,1 kB)
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
Kody HID
- W przypadku każdego zdarzenia HID może on transmitować tylko 1 zdarzenie w danym momencie.
- Po naciśnięciu przycisku powinien zostać przesłany prawidłowy kod zdarzenia i odpowiednio kod zdarzenia.
- Na przykład zwiększ głośność. evtest może zarejestrować tylko jedno zdarzenie zwiększenia głośności, a kod musi zawierać:
KEY_VOLUME_UP.
- Na przykład zwiększ głośność. evtest może zarejestrować tylko jedno zdarzenie zwiększenia głośności, a kod musi zawierać:
- Jeśli istnieje interfejs zaprojektowany pod kątem udostępniania wymienionych poniżej funkcji, Urządzenie peryferyjne USB musi obsługiwać wysyłanie lub odbieranie odpowiednich sygnałów HID zdarzeń według urządzenia USB.org HID specyfikacji.
Strona klienta (0x0c)
| Nazwa klucza | Identyfikator korzystania z HID | Typ użycia |
|---|---|---|
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 |
Strona telefonii (0x0b)
| Nazwa klucza | Identyfikator korzystania z HID | Typ użycia |
|---|---|---|
| Hook Switch | 0x20 |
OOC |
| Dzwonek | 0x9e |
OOC |
Strona LED (0x08)
| Nazwa klucza | Identyfikator korzystania z HID | Typ wykorzystania |
|---|---|---|
| Wycisz | 0x09 |
OOC |
| Bez mocowania | 0x17 |
OOC |
| Dzwonek | 0x18 |
OOC |
wykrywanie wtyczki,
Jeśli urządzenie USB nie obsługuje standardu USB Audio Class (UAC), zawsze będzie wyświetlany komunikat węzła wyjściowego w obszarze powiadomień ChromeOS. Jeśli jednak urządzenie USB obsługuje jeśli w uniwersalnej kampanii promującej aplikację system poprawnie wykryje gniazdo słuchawek 3,5 mm, jest podłączone urządzenie.
- W przypadku gniazd słuchawek 3,5 mm należy używać wykrywania obecności.
Ogólne wymagania dotyczące Bluetootha
Zapoznaj się ze specyfikacją Bluetootha dla urządzeń zgodnych z ChromeOS.
Format dźwięku
| Odtwarzanie | Nagrywanie | |
|---|---|---|
| Częstotliwość próbkowania | ≥ 16 kHz | ≥ 16 kHz |
| Format | S16_LE | S16_LE |
- Numer kanału i konfiguracja muszą być poprawne.
- Wszystkie obsługiwane częstotliwości próbkowania przez słuchawki muszą działać prawidłowo.
- Odchylenie między zmierzoną częstotliwością a częstotliwością próbkowania musi wynosić ≤ 0,1% .
- Błąd standardowy regresji liniowej zmierzonej stawki musi być mniejszy niż 30.
Zestaw słuchawkowy musi obsługiwać odtwarzanie lub nagrywanie przy różnych częstotliwościach próbkowania, obiecuje wsparcie.
Na przykład: odtwarzaj dźwięk poniżej 44,1 kHz, ale rejestruj głos poniżej 48 kHz jednocześnie.
- W przeciwnym razie ChromeOS musi dodać do po stronie systemu.
Jakość dźwięku
Trasa – wyciszenie
- Jeśli użytkownicy mogą wyciszyć urządzenie audio, muszą mieć do tego dostęp w interfejsie.
- Zachowanie stanu wyciszenia w sposób, na który nie mają wpływu:
- otwieranie i zamykanie urządzenia.
- przełączyć się na inne urządzenie wejściowe.
Opóźnienie dźwięku
Czas oczekiwania
- Opóźnienie wyjścia
- Odtwarzanie dźwięku musi rozpocząć się w ciągu 500 ms od działania użytkownika, które inicjuje odtwarzanie.
- Może poprosić o wyjątek, jeśli producent OEM może udowodnić, że nie ma echa, gdy nie spełnia tego wymagania.
- Odtwarzanie dźwięku musi rozpocząć się w ciągu 500 ms od działania użytkownika, które inicjuje odtwarzanie.
Synchronizacja audio-wideo
- Odtwarzanie dźwięku powinno być zsynchronizowane z odtwarzaniem filmu. Odtwarzanie dźwięku może wyprzedzać obraz o maksymalnie 25 ms lub opóźniać się o maksymalnie 95 ms.
Historia zmian
| Data | Wersja | Uwagi |
|---|---|---|
| 2024-09-06 | 1.3 | Wyznaczono specyfikację zgodności z ChromeOS. Początkowa publikacja witryny partnera. |
| 2022-09-14 | 1,2 | Zaktualizowano do wersji 1.2. |
| 2022-08-19 | 1.1 | Zaktualizowano do wersji 1.1. |
| 2022-08-18 | 1,0 | Utworzono powiązaną specyfikację WWCB. |