Commandes des appareils auditifs

Les commandes des wearables dans l'Association express visent à fournir de meilleurs contrôles d'accès aux fonctionnalités importantes des wearables sur Android. Pour ce faire, un nouveau groupe de messages Hearable controls a été ajouté à Message Stream.

Nom du groupe de messages Valeur
Contrôle des appareils auditifs 0x08

Contrôle actif du bruit

Le contrôle actif du bruit est en train de devenir une fonctionnalité phare des casques haut de gamme. Du côté du demandeur, Association express disposera de l'UI et de la logique permettant de définir, d'obtenir et d'enregistrer l'état, qui sera stocké du côté du fournisseur. Le fournisseur doit obligatoirement envoyer Session Nonce lorsque le flux d'événements est connecté. Pour ce faire, les codes de message ci-dessous sont définis :

Nom de code du message Valeur Expéditeur Personne interrogée Mac CONFIRMATION
Obtenir l'état de l'ANC 0x11 Seeker Fournisseur N N
Définir l'état de l'ANC 0x12 Seeker Fournisseur O O
État de la suppression active du bruit 0x13 Fournisseur Seeker N N

Lorsqu'un demandeur se connecte à un fournisseur ou lorsqu'un fournisseur reçoit un message "Get ANC state" (Obtenir l'état ANC), le fournisseur peut notifier l'état ANC pour informer le demandeur de sa capacité ANC et de son état enregistré. Le message est le suivant :

Byte Type de données Description Valeur
0 uint8 Contrôle des appareils auditifs 0x08
1 uint8 État de la suppression active du bruit 0x13
2 - 3 uint16 Longueur de données supplémentaires 0x04
4 - 7 Données de contrôle ANC Variable
Données de contrôle ANC
Byte Type de données Description Valeur
0 uint8 Code de la version varies, 0x02 for this version
1 Drapeaux Boutons d'activation/de désactivation de l'UI
Chaque mode est activé (1) ou désactivé (0) en fonction de la valeur de son bit de signalisation, comme suit :
 Bit 0 (MSB) : transparent
 Bit 1 : adaptatif (ou 0 s'il n'est pas pris en charge)
 Bit 2 : désactivé
 Bit 3 : réservé (définir le bit sur 0)
 Bit 4 : ANC
Variable
2 Drapeaux Boutons à bascule définissables
Vous pouvez également définir ici tout ou partie des bits de bouton à bascule de l'UI ci-dessus pour indiquer ceux qui sont actuellement activés.
Variable
3 Drapeaux État actuel
Un seul bit peut être défini et la valeur de ce byte ne doit pas être nulle.
Variable

Le Seeker affichera l'UI d'activation/désactivation en fonction des données de contrôle de l'ANC.

Exemple 1 : Le fournisseur est compatible avec la suppression active du bruit à trois modes : transparence, désactivé et suppression active du bruit. Les écouteurs sont sur la tête, tous les modes sont désormais configurables et l'état actuel est "désactivé" :

Byte Type de données Description Valeur
0 uint8 Code de la version 0x01
1 Drapeaux Boutons d'activation de l'UI 0b10101000
2 Drapeaux Boutons à bascule configurables 0b10101000
3 Drapeaux État actuel 0b00100000

Exemple 2 : Le fournisseur accepte la suppression active du bruit à trois voies (transparence, désactivée, suppression active du bruit). Un seul écouteur est actuellement sur la tête ou aucun écouteur n'est sur la tête. Aucun mode n'est donc définissable et l'état actuel est "désactivé" :

Byte Type de données Description Valeur
0 uint8 Code de la version 0x01
1 Drapeaux Bouton bascule de l'UI 0b10101000
2 Drapeaux Bouton bascule configurable 0b00000000
3 Drapeaux État actuel 0b00100000

Si l'utilisateur active le bouton bascule, le demandeur définit l'état actuel sur le fournisseur comme suit :

Byte Type de données Description Valeur
0 uint8 Contrôle des appareils auditifs 0x08
1 uint8 Définir l'état de l'ANC 0x12
2 - 3 uint16 Longueur de données supplémentaires varies, 0x04 ou 0x14
4 uint8 Code de version Seeker varies, 0x01 ou 0x02
5 Drapeaux Modes de suppression active du bruit (bouton bascule dans l'UI) Variable
6 Drapeaux Modes avec ANC activé (paramètre à activer/désactiver) Variable
7 Drapeaux Nouvel index du mode ANC (nouvel état) Variable
8 - 23 Réservé Variable

Les octets 4 à 7 sont en fait des données de contrôle ANC envoyées depuis le côté Seeker. Si la valeur de longueur supplémentaire est définie sur 0x14, les octets réservés 8 à 23 sont présents. Le fournisseur doit les ignorer à la réception. Si la valeur de longueur supplémentaire est définie sur 0x04, aucun octet réservé n'est présent.

Lorsqu'un fournisseur reçoit un message "Set ANC state" (Définir l'état ANC), il doit accuser réception et notifier l'état ANC à tous les demandeurs connectés. Si l'utilisateur modifie le paramètre à l'aide d'un geste sur le casque ou dans l'application associée, le Fournisseur doit également envoyer une notification à tous les Chercheurs connectés.

Exemple 3 : Le fournisseur est compatible avec la suppression active du bruit à quatre modes (transparence, adaptatif, désactivé et suppression active du bruit). Les écouteurs sont portés, tous les modes peuvent être définis et l'état actuel est "adaptatif" :

Byte Type de données Description Valeur
0 uint8 Code de la version 0x01
1 Drapeaux Bouton bascule de l'UI 0b11101000
2 Drapeaux Bouton bascule configurable 0b11101000
3 Drapeaux État actuel 0b01000000