Słyszalne elementy sterujące

Słyszalne elementy sterujące Szybkim parowaniem zapewniają lepszą kontrolę dostępu do ważnych funkcji słyszalnych na Androidzie. Aby to osiągnąć, dodaliśmy nowe elementy sterujące grupy wiadomości w strumieniu wiadomości.

Nazwa grupy wiadomości Wartość
Sterowanie dźwiękowe 0x08

Aktywna kontrola szumów

Aktywna kontrola szumów staje się najważniejszą funkcją słuchawek premium. Po stronie poszukiwacza Szybkie parowanie będzie miało interfejs użytkownika i logikę do ustawiania, pobierania i zapisania stanu. Stan będzie przechowywany po stronie dostawcy. Dostawca musi wysyłać jednorazową liczbę jednorazową po połączeniu strumienia zdarzeń. Aby to osiągnąć, zdefiniowano poniższe kody wiadomości:

Nazwa kodu wiadomości Wartość Nadawca Użytkownik Adres MAC POTWIERDŹ
Pobieranie stanu ANC 0x11 Poszukiwacz Dostawca N N
Ustaw stan ANC 0x12 Poszukiwacz Dostawca T T
Powiadamianie stanu ANC 0x13 Dostawca Poszukiwacz N N

Gdy poszukiwacz łączy się z dostawcą lub dostawca otrzymuje komunikat „Pobierz stan ANC”, dostawca może powiadomić stan ANC, aby poinformować go o swojej funkcji ANC i jej zapisanym stanie. Komunikat jest następujący:

Bajt Typ danych Opis Wartość
0 uint8 Sterowanie dźwiękowe 0x08
1 uint8 Powiadamianie stanu ANC 0x13
2–3 uint16 Dodatkowa długość danych 0x04
4–7 Dane kontrolne ARC różni się
Dane sterowania ANC
Bajt Typ danych Opis Wartość
0 uint8 Kod wersji różne,0x02 dla tej wersji
1 Flagi Przełączniki interfejsu
Każdy tryb jest włączony (1) lub wyłączony (0) w zależności od wartości bitu flagi w następujący sposób:
Bit 0 (MSB): przezroczysty
Bit 1: zarezerwowany (ustawiony na 0)
Bit 2: wyłączony
Bit 3: zarezerwowany (ustaw bit na 0)
Bit 4: ANC
różni się
2 Flagi Możliwe do skonfigurowania przełączniki
W tym miejscu można również ustawić dowolne lub wszystkie elementy przełączania interfejsu użytkownika, aby wskazać, które z nich są obecnie włączone.
różni się
3 Flagi Bieżący stan
Można ustawić tylko jeden bit
różni się

Aplikacja Seeker będzie pokazywać interfejs przełączania zgodnie z danymi sterującymi ANC.

Przykład 1. Dostawca obsługuje trójkanałowy ANC: przezroczysty – wyłączony – ANC i słuchawki są włączone, wszystkie tryby są obecnie dostępne, a bieżący stan to wyłączony:

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

Przykład 2. Dostawca obsługuje trójkanałową kombinację ANC: przezroczysty – wyłączony – ANC, teraz tylko jedna słuchawka jest na głowie lub nie ma ich żadnych, więc nie można skonfigurować żadnych trybów, a bieżący stan jest wyłączony:

Bajt Typ danych Opis Wartość
0 uint8 Kod wersji 0x01
1 Flagi Przełącznik interfejsu 0b10101000
2 Flagi Przełącznik konfiguracji 0 00000000
3 Flagi Bieżący stan 0b00100000

Jeśli użytkownik przełączy przełącznik, selektor ustawi bieżący stan na dostawcę w ten sposób:

Bajt Typ danych Opis Wartość
0 uint8 Sterowanie dźwiękowe 0x08
1 uint8 Ustaw stan ANC 0x12
2–3 uint16 Dodatkowa długość danych różni się, 0x04 lub 0x14
4 uint8 Kod wersji osoby wyszukującej zależy, 0x01 lub 0x02
5 Flagi Tryby konfiguracji ANC (przełącznik interfejsu użytkownika) różni się
6 Flagi Tryby włączone ANC (przełącznik do ustawiania) różni się
7 Flagi Nowy indeks trybu ANC (nowy stan) różni się
8–23 Zarezerwowano różni się

Bajty 4–7 to w rzeczywistości dane kontrolne ARC wysyłane z aplikacji Seeker. Jeśli dodatkowa wartość długości jest ustawiona na 0x14, zarezerwowane bajty 8–23 będą obecne i po otrzymaniu tych bajtów dostawca powinien je zignorować. Jeśli dodatkowa wartość długości jest ustawiona na 0x04, brak zarezerwowanych bajtów.

Gdy dostawca otrzyma komunikat „Ustaw stan ANC”, powinien potwierdzić i powiadomić o stanie ANC do wszystkich połączonych poszukiwaczy. Jeśli użytkownik zmieni to ustawienie za pomocą gestów w słuchawkach lub za pomocą aplikacji towarzyszącej, dostawca powinien też wysłać powiadomienie do wszystkich połączonych poszukiwaczy.