Controlli udibili
I controlli dell'udito sulla funzionalità di accoppiamento rapido mirano a fornire migliori controlli dell'accesso per importanti funzionalità di Hearable su Android. A questo scopo, è stato aggiunto un nuovo gruppo di controlli Hearable all'interno dello Stream di messaggi.
Nome gruppo di messaggi | Valore |
---|---|
Controllo audio | 0x08 |
Controllo attivo del rumore
Il controllo attivo del rumore sta diventando una funzionalità importante per le cuffie premium. Sul lato cercante, l'accoppiamento rapido avrà l'interfaccia utente e la logica da impostare, recuperare e salvare lo stato, che verrà archiviato sul lato provider. È obbligatorio che il provider invii un Nonce della sessione quando è connesso lo stream di eventi. A questo scopo, vengono definiti i seguenti codici messaggio:
Nome codice messaggio | Valore | Mittente | Intervistato | MAC | ACK |
---|---|---|---|---|---|
Attiva stato ANC | 0x11 | In cerca | Provider | N | N |
Imposta stato ANC | 0x12 | In cerca | Provider | Sì | Sì |
Invia notifica stato ANC | 0x13 | Provider | In cerca | N | N |
Quando un Seeker si connette a un provider o quando un provider riceve un messaggio "Ottieni stato ANC", il provider può inviare una notifica allo stato di ANC per comunicare al richiedente le sue funzionalità ANC e il suo stato di archiviazione. Il messaggio è il seguente:
Byte | Tipo di dati | Descrizione | Valore |
---|---|---|---|
0 | uint8 | Controllo audio | 0x08 |
1 | uint8 | Invia notifica stato ANC | 0x13 |
2 - 3 | uint16 | Lunghezza dei dati aggiuntivi | 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 | Opzioni di attivazione/disattivazione nell'interfaccia utente Ogni modalità è abilitata (1) o disabilitata (0) a seconda del valore del bit del flag corrispondente, come segue: Bit 0 (MSB): trasparente Bit 1: riservato (set di bit su 0) Bit 2: off Bit 3: riservato (set di bit su 0) Bit 4: ANC |
varia |
2 | Bandiere | Opzioni di attivazione/disattivazione impostabili Tutti i bit di attivazione/disattivazione dell'interfaccia utente precedenti possono essere impostati qui, per indicare quali sono attualmente abilitati. |
varia |
3 | Bandiere | Stato attuale È possibile impostare un solo bit |
varia |
Seeker mostrerà l'UI di attivazione/disattivazione in base ai dati di controllo di ANC.
Esempio 1: il provider supporta la cancellazione attiva del rumore a tre vie: trasparente - off - ANC e gli auricolari sono attivi, tutte le modalità sono ora configurabili e lo stato corrente è disattivato:
Byte | Tipo di dati | Descrizione | Valore |
---|---|---|---|
0 | uint8 | Codice versione | 0x01 |
1 | Bandiere | Opzioni di attivazione/disattivazione dell'interfaccia utente | 0b10101000 |
2 | Bandiere | Pulsante di attivazione/disattivazione impostabile | 0b10101000 |
3 | Bandiere | Stato attuale | 0b00100000 |
Esempio 2: il provider supporta la cancellazione attiva del rumore a tre vie: trasparente - off - ANC, solo un auricolare è in testa al momento o nessun auricolare è in testa, quindi nessuna modalità è configurabile e lo stato attuale è disattivato:
Byte | Tipo di dati | Descrizione | Valore |
---|---|---|---|
0 | uint8 | Codice versione | 0x01 |
1 | Bandiere | Pulsante di attivazione/disattivazione dell'interfaccia utente | 0b10101000 |
2 | Bandiere | Pulsante di attivazione/disattivazione impostabile | 0b00000000 |
3 | Bandiere | Stato attuale | 0b00100000 |
Se l'utente attiva/disattiva l'opzione, il richiedente imposta lo stato corrente sul provider come segue:
Byte | Tipo di dati | Descrizione | Valore |
---|---|---|---|
0 | uint8 | Controllo audio | 0x08 |
1 | uint8 | Imposta stato ANC | 0x12 |
2 - 3 | uint16 | Lunghezza dei dati aggiuntivi | varia, 0x04 o 0x14 |
4 | uint8 | Codice versione del richiedente | varia, 0x01 o 0x02 |
5 | Bandiere | Modalità impostabili di ANC (opzione di attivazione/disattivazione dell'interfaccia utente) | varia |
6 | Bandiere | Modalità attive di ANC (opzione di attivazione/disattivazione impostabile) | varia |
7 | Bandiere | Nuovo indice della modalità ANC (nuovo stato) | varia |
8 - 23 | Riservata | varia |
Il byte 4-7 è in realtà dati di controllo ANC inviati dal lato Seeker. Se il valore di lunghezza aggiuntiva è impostato su 0x14, saranno presenti i byte riservati 8-23 e, una volta ricevuti questi byte, il provider dovrebbe ignorarli. Se il valore di lunghezza aggiuntiva è impostato su 0x04, non sono presenti byte riservati.
Quando un provider riceve un messaggio "Imposta stato ANC", deve Acknowledge e inviare una notifica allo stato di ANC a tutti i cercatori connessi. Se l'utente cambia l'impostazione tramite il gesto delle cuffie o un'applicazione complementare, il provider deve anche inviare una notifica a tutti i Seeker connessi.