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.