Controlli degli hearable
I controlli degli hearable nell'accoppiamento rapido mirano a fornire un migliore controllo dell'accesso per le funzionalità importanti degli hearable su Android. A questo scopo, è stato aggiunto un nuovo gruppo di messaggi Hearable controlli all'interno di Flusso di messaggi.
Nome del gruppo di messaggi | Valore |
---|---|
Controllo degli hearable | 0x08 |
Controllo attivo del rumore
Il controllo attivo del rumore sta diventando una funzionalità di spicco per le cuffie premium. Sul lato del richiedente, l'accoppiamento rapido avrà l'interfaccia utente e la logica per impostare, ottenere e salvare lo stato, che verrà memorizzato sul lato del fornitore. È obbligatorio che il fornitore invii Session Nonce quando lo stream di eventi è connesso. Per raggiungere questo obiettivo, sono definiti i seguenti codici di messaggio:
Nome del codice del messaggio | Valore | Mittente | Intervistato | MAC | ACK |
---|---|---|---|---|---|
Recupera lo stato ANC | 0x11 | Seeker | Provider | No | No |
Impostare lo stato ANC | 0x12 | Seeker | Provider | Y | Y |
Notifica lo stato dell'ANC | 0x13 | Provider | Seeker | No | No |
Quando un richiedente si connette a un fornitore o quando un fornitore riceve un messaggio "Get ANC state", il fornitore può notificare lo stato ANC per comunicare al richiedente la sua funzionalità ANC e il suo stato memorizzato. Il messaggio è il seguente:
Byte | Tipo di dati | Descrizione | Valore |
---|---|---|---|
0 | uint8 | Controllo degli hearable | 0x08 |
1 | uint8 | Notifica lo stato dell'ANC | 0x13 |
2 - 3 | uint16 | Lunghezza dati aggiuntiva | 0x04 |
4 - 7 | Dati di controllo ANC | varia |
Dati di controllo ANC
Byte | Tipo di dati | Descrizione | Valore |
---|---|---|---|
0 | uint8 | Codice versione | varia, 0x02 per questa versione |
1 | Bandiere | Attivazione/disattivazione dell'interfaccia utente Ogni modalità è attivata (1) o disattivata (0) in base al valore del relativo bit di flag, come segue: Bit 0 (MSB): trasparente Bit 1: adattiva (o 0 se non è supportata) Bit 2: disattivata Bit 3: riservato (imposta il bit su 0) Bit 4: ANC |
varia |
2 | Bandiere | Attivazione/disattivazione impostabile È possibile impostare qui uno o tutti i bit di attivazione/disattivazione della UI riportati sopra per indicare quali sono attualmente attivi. |
varia |
3 | Bandiere | Stato attuale Può essere impostato un solo bit e il valore di questo byte deve essere diverso da zero. |
varia |
Il cercatore mostrerà l'interfaccia utente del pulsante di attivazione/disattivazione in base ai dati di controllo ANC.
Esempio 1: il fornitore supporta l'ANC a tre vie: trasparente - off - ANC e gli auricolari sono indossati, tutte le modalità sono ora impostabili e lo stato attuale è off:
Byte | Tipo di dati | Descrizione | Valore |
---|---|---|---|
0 | uint8 | Codice versione | 0x01 |
1 | Bandiere | Pulsanti di attivazione/disattivazione della UI | 0b10101000 |
2 | Bandiere | Attivazione/disattivazione configurabile | 0b10101000 |
3 | Bandiere | Stato attuale | 0b00100000 |
Esempio 2: il fornitore supporta l'ANC a tre vie: trasparente - disattivata - ANC, solo un auricolare è indossato o nessuno è indossato, quindi non è possibile impostare modalità e lo stato attuale è disattivato:
Byte | Tipo di dati | Descrizione | Valore |
---|---|---|---|
0 | uint8 | Codice versione | 0x01 |
1 | Bandiere | Attiva/disattiva l'interfaccia utente | 0b10101000 |
2 | Bandiere | Pulsante di attivazione/disattivazione configurabile | 0b00000000 |
3 | Bandiere | Stato attuale | 0b00100000 |
Se l'utente attiva/disattiva il pulsante, il richiedente imposterà lo stato attuale del fornitore come segue:
Byte | Tipo di dati | Descrizione | Valore |
---|---|---|---|
0 | uint8 | Controllo degli hearable | 0x08 |
1 | uint8 | Impostare lo stato ANC | 0x12 |
2 - 3 | uint16 | Lunghezza dati aggiuntiva | varia, 0x04 o 0x14 |
4 | uint8 | Codice versione Seeker | varia, 0x01 o 0x02 |
5 | Bandiere | Modalità ANC impostabili (attivazione/disattivazione nell'interfaccia utente) | varia |
6 | Bandiere | Modalità ANC attive (opzione attivabile) | varia |
7 | Bandiere | Nuovo indice della modalità ANC (nuovo stato) | varia |
8 - 23 | Prenotato | varia |
I byte da 4 a 7 sono in realtà dati di controllo ANC inviati dal lato del cercatore. Se il valore della lunghezza aggiuntiva è impostato su 0x14, i byte riservati 8-23 saranno presenti e, al ricevimento di questi byte, il fornitore dovrà ignorarli. Se il valore della lunghezza aggiuntiva è impostato su 0x04, non sono presenti byte riservati.
Quando un fornitore riceve un messaggio "Imposta stato ANC", deve confermare la ricezione e comunicare lo stato ANC a tutti i richiedenti connessi. Se l'utente modifica l'impostazione tramite il gesto delle cuffie o l'applicazione complementare, il fornitore deve inviare una notifica anche a tutti i richiedenti connessi.
Esempio 3: il fornitore supporta l'ANC a 4 vie: trasparente - adattiva - off - ANC, gli auricolari sono indossati, tutte le modalità sono impostabili ora e lo stato attuale è adattivo:
Byte | Tipo di dati | Descrizione | Valore |
---|---|---|---|
0 | uint8 | Codice versione | 0x01 |
1 | Bandiere | Attiva/disattiva l'interfaccia utente | 0b11101000 |
2 | Bandiere | Pulsante di attivazione/disattivazione configurabile | 0b11101000 |
3 | Bandiere | Stato attuale | 0b01000000 |