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 Data
Przykł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. |