Einstellungen für tragbare Audiogeräte
Die Einstellungen für Wearables bei „Schnelles Pairing“ sollen eine bessere Zugriffssteuerung für wichtige Wearables-Funktionen auf Android-Geräten ermöglichen. Dazu wurde im Message Stream eine neue Gruppe für hörbare Steuerelemente hinzugefügt.
Name der Nachrichtengruppe | Wert |
---|---|
Steuerung über ein tragbares Gerät | 0x08 |
Einstellungen für die aktive Geräuschunterdrückung
Die aktive Geräuschunterdrückung wird immer wichtiger für Premium-Kopfhörer. Auf der Seite des Suchers bietet Fast Pair die Benutzeroberfläche und Logik zum Festlegen, Abrufen und Speichern des Status. Der Status wird auf der Anbieterseite gespeichert. Der Anbieter muss eine Sitzungs-Nonce senden, wenn der Ereignisstream verbunden ist. Dazu sind die folgenden Nachrichtencodes definiert:
Name des Nachrichtencodes | Wert | Gesendet von | Teilnehmer | MAC | ACK |
---|---|---|---|---|---|
ANC-Status abrufen | 0x11 | Seeker | Anbieter | N | N |
ANC-Status festlegen | 0x12 | Seeker | Anbieter | J | J |
ANC-Status melden | 0x13 | Anbieter | Seeker | N | N |
Wenn ein Sucher eine Verbindung zu einem Anbieter herstellt oder ein Anbieter eine Nachricht vom Typ „Get ANC state“ (ANC-Status abrufen) empfängt, kann der Anbieter den ANC-Status benachrichtigen, um den Sucher über seine ANC-Funktion und seinen gespeicherten Status zu informieren. Die Nachricht lautet:
Byte | Datentyp | Beschreibung | Wert |
---|---|---|---|
0 | uint8 | Steuerung über ein tragbares Gerät | 0x08 |
1 | uint8 | ANC-Status melden | 0x13 |
2–3 | uint16 | Zusätzliche Datenlänge | 0x04 |
4–7 | ANC-Kontrolldaten | variiert |
ANC-Kontrolldaten
Byte | Datentyp | Beschreibung | Wert |
---|---|---|---|
0 | uint8 | Versionscode | variiert,0x02 für diese Version |
1 | Flags | Ein-/Aus-Schaltflächen auf der Benutzeroberfläche Jeder Modus wird gemäß dem Wert seines Flags aktiviert (1) oder deaktiviert (0): Bit 0 (MSB): transparent Bit 1: Reserviert (Bit auf 0 setzen) Bit 2: Aus Bit 3: Reserviert (Bit auf 0 setzen) Bit 4: ANC |
variiert |
2 | Flags | Einstellbare Ein-/Aus-Schaltflächen Alle oder einige der oben genannten Ein-/Aus-Schaltflächen können hier festgelegt werden, um anzugeben, welche derzeit aktiviert sind. |
variiert |
3 | Flags | Aktueller Status Es kann nur ein Bit gesetzt werden und der Wert dieses Bytes darf nicht null sein. |
variiert |
Der Sucher zeigt die Ein-/Aus-Bedienoberfläche entsprechend den ANC-Steuerungsdaten an.
Beispiel 1: Der Anbieter unterstützt die dreistufige Geräuschunterdrückung: „Transparenz“ – „Aus“ – „Geräuschunterdrückung“ und die In-Ear-Kopfhörer sind aufgesetzt. Alle Modi können jetzt festgelegt werden und der aktuelle Status ist „Aus“:
Byte | Datentyp | Beschreibung | Wert |
---|---|---|---|
0 | uint8 | Versionscode | 0x01 |
1 | Flags | Ein-/Aus-Schaltflächen | 0b10101000 |
2 | Flags | Ein-/Aus-Schaltflächen | 0b10101000 |
3 | Flags | Aktueller Status | 0b00100000 |
Beispiel 2: Der Anbieter unterstützt die dreistufige aktive Geräuschunterdrückung: Transparenz – Aus – ANC. Es ist nur ein In-Ear-Kopfhörer aufgesetzt oder keiner, sodass keine Modi festgelegt werden können und der aktuelle Status „Aus“ ist:
Byte | Datentyp | Beschreibung | Wert |
---|---|---|---|
0 | uint8 | Versionscode | 0x01 |
1 | Flags | UI-Schalter | 0b10101000 |
2 | Flags | Ein-/Aus-Schaltfläche | 0b00000000 |
3 | Flags | Aktueller Status | 0b00100000 |
Wenn der Nutzer den Schalter umlegt, legt der Sucher den aktuellen Status für den Anbieter so fest:
Byte | Datentyp | Beschreibung | Wert |
---|---|---|---|
0 | uint8 | Steuerung über ein tragbares Gerät | 0x08 |
1 | uint8 | ANC-Status festlegen | 0x12 |
2–3 | uint16 | Zusätzliche Datenlänge | variiert, 0x04 oder 0x14 |
4 | uint8 | Versionscode von Seeker | variiert, 0x01 oder 0x02 |
5 | Flags | Einstellbare ANC-Modi (UI-Schalter) | variiert |
6 | Flags | Modi mit aktivierter Geräuschunterdrückung (einstellbarer Schalter) | variiert |
7 | Flags | Neuer Index für den ANC-Modus (neuer Status) | variiert |
8–23 | Reserviert | variiert |
Die Bytes 4–7 sind tatsächlich ANC-Kontrolldaten, die von der Seite des Suchers gesendet werden. Wenn der Wert für die zusätzliche Länge auf 0x14 festgelegt ist, sind die reservierten Bytes 8–23 vorhanden. Der Anbieter sollte diese Bytes beim Empfang ignorieren. Wenn der Wert für die zusätzliche Länge auf 0x04 festgelegt ist, sind keine reservierten Byte vorhanden.
Wenn ein Anbieter eine Nachricht vom Typ „ANC-Status festlegen“ empfängt, sollte er sie bestätigen und den ANC-Status an alle verbundenen Sucher senden. Wenn der Nutzer die Einstellung über eine Geste des Headsets oder eine zugehörige App ändert, sollte der Anbieter auch eine Benachrichtigung an alle verbundenen Suchenden senden.