Sterowanie słuchawkami

Elementy sterujące słuchawkami w szybkim parowaniu mają na celu zapewnienie lepszego dostępu do ważnych funkcji słuchawek na urządzeniach z Androidem. W tym celu dodaliśmy nową grupę wiadomości Hearable controls w sekcji Message Stream.

Nazwa grupy wiadomości Wartość
Sterowanie słuchawkami 0x08

Aktywna kontrola szumów

Aktywna kontrola szumów staje się ważną funkcją słuchawek klasy premium. Po stronie urządzenia wyszukującego Szybkie parowanie będzie mieć interfejs i logikę do ustawiania, pobierania i zapisywania stanu, a stan będzie przechowywany po stronie urządzenia udostępniającego. Gdy strumień zdarzeń jest połączony, dostawca musi wysłać Session Nonce. W tym celu zdefiniowano te kody wiadomości:

Nazwa kodu wiadomości Wartość Nadawca Respondent MAC ACK
Pobieranie stanu ANC 0x11 Seeker Dostawca N N
Ustawianie stanu ANC 0x12 Seeker Dostawca T T
Powiadamianie o stanie ANC 0x13 Dostawca Seeker N N

Gdy wyszukujący połączy się z dostawcą lub gdy dostawca otrzyma wiadomość „Get ANC state”, może powiadomić wyszukującego o stanie ANC, aby poinformować go o swoich możliwościach w zakresie ANC i o zapisanym stanie. Wiadomość wygląda tak:

Bajt Typ danych Opis Wartość
0 uint8 Sterowanie słuchawkami 0x08
1 uint8 Powiadamianie o stanie ANC 0x13
2–3 uint16 Długość dodatkowych danych 0x04
4–7 Dane sterujące ANC różni się
Dane sterowania ANC
Bajt Typ danych Opis Wartość
0 uint8 Kod wersji różni się, w tej wersji 0x02
1 Flagi Przełączniki interfejsu
Każdy tryb jest włączony (1) lub wyłączony (0) zgodnie z wartością bitu flagi:
Bit 0 (MSB): przezroczysty
Bit 1: adaptacyjny (lub 0, jeśli nie jest obsługiwany)
Bit 2: wyłączony
Bit 3: zarezerwowany (ustaw bit na 0)
Bit 4: ANC
różni się
2 Flagi Przełączniki, które można ustawić
Tutaj można też ustawić dowolne lub wszystkie przełączniki interfejsu, aby wskazać, które z nich są obecnie włączone.
różni się
3 Flagi Bieżący stan
Można ustawić tylko 1 bit, a wartość tego bajtu musi być różna od zera.
różni się

Wyszukiwarka wyświetli interfejs przełącznika zgodnie z danymi sterowania ANC.

Przykład 1. Dostawca obsługuje 3-stopniową aktywną redukcję szumów: dźwięki otoczenia – wyłączone – aktywna redukcja szumów. Słuchawki są na głowie, wszystkie tryby można teraz ustawić, a bieżący stan to wyłączone:

Bajt Typ danych Opis Wartość
0 uint8 Kod wersji 0x01
1 Flagi Przełączniki interfejsu 0b10101000
2 Flagi Przełączniki z możliwością ustawienia 0b10101000
3 Flagi Bieżący stan 0b00100000

Przykład 2. Dostawca obsługuje 3-stopniową aktywną redukcję hałasu: tryb dźwięku otoczenia – wyłączony – aktywna redukcja hałasu. Tylko jedna słuchawka jest na głowie lub żadna słuchawka nie jest na głowie, więc nie można ustawić żadnego trybu, a bieżący stan to wyłączony:

Bajt Typ danych Opis Wartość
0 uint8 Kod wersji 0x01
1 Flagi Przełącznik interfejsu 0b10101000
2 Flagi Przełącznik z możliwością ustawienia 0b00000000
3 Flagi Bieżący stan 0b00100000

Jeśli użytkownik przełączy przełącznik, usługa Seeker ustawi bieżący stan na dostawcę w następujący sposób:

Bajt Typ danych Opis Wartość
0 uint8 Sterowanie słuchawkami 0x08
1 uint8 Ustawianie stanu ANC 0x12
2–3 uint16 Długość dodatkowych danych różne, 0x04 lub 0x14
4 uint8 Kod wersji Seeker różna, 0x01 lub 0x02
5 Flagi Tryby ANC z możliwością ustawienia (przełącznik w interfejsie) różni się
6 Flagi Tryby ANC (przełącznik) różni się
7 Flagi Nowy indeks trybu ANC (nowy stan) różni się
8–23 Zarezerwowane różni się

Bajty 4–7 to w rzeczywistości dane sterujące ANC wysyłane przez urządzenie wyszukujące. Jeśli dodatkowa wartość długości jest ustawiona na 0x14, zarezerwowane bajty 8–23 będą obecne, a po ich otrzymaniu dostawca powinien je zignorować. Jeśli dodatkowa wartość długości jest ustawiona na 0x04, nie ma zarezerwowanych bajtów.

Gdy dostawca otrzyma wiadomość „Set ANC state”, powinien potwierdzić i powiadomić o stanie ANC wszystkie połączone urządzenia wyszukujące. Jeśli użytkownik zmieni ustawienie za pomocą gestu na słuchawkach lub aplikacji towarzyszącej, dostawca powinien również wysłać powiadomienie do wszystkich połączonych odbiorców.

Przykład 3. Dostawca obsługuje 4-kierunkową aktywną redukcję szumów: dźwięki otoczenia – adaptacyjna – wyłączona – aktywna redukcja szumów. Słuchawki są na głowie, wszystkie tryby można teraz ustawić, a bieżący stan to adaptacyjny:

Bajt Typ danych Opis Wartość
0 uint8 Kod wersji 0x01
1 Flagi Przełącznik interfejsu 0b11101000
2 Flagi Przełącznik z możliwością ustawienia 0b11101000
3 Flagi Bieżący stan 0b01000000