Kontrol Hearable
Kontrol perangkat dengar di Sambungan Cepat bertujuan untuk memberikan kontrol akses yang lebih baik untuk fitur Perangkat dengar yang penting di Android. Grup pesan baru Kontrol alat bantu dengar di dalam Aliran Pesan telah ditambahkan untuk mencapai hal ini.
Nama Grup Pesan | Nilai |
---|---|
Kontrol perangkat audio | 0x08 |
Kontrol bising aktif
Kontrol bising aktif menjadi fitur penting untuk headphone premium. Di sisi Seeker, Sambungan Cepat akan memiliki UI dan logika untuk menyetel, mendapatkan, dan menyimpan status, dan status akan disimpan di sisi Penyedia. Penyedia wajib mengirim Nonce Sesi saat aliran peristiwa terhubung. Untuk melakukannya, kode pesan di bawah ditentukan:
Nama Kode Pesan | Nilai | Pengirim | Responden | MAC | ACK |
---|---|---|---|---|---|
Mendapatkan status ANC | 0x11 | Pencari | Penyedia | T | T |
Menetapkan status ANC | 0x12 | Pencari | Penyedia | Y | Y |
Memberi tahu status ANC | 0x13 | Penyedia | Pencari | T | T |
Saat Pencari terhubung ke Penyedia, atau saat Penyedia menerima pesan "Dapatkan status ANC", Penyedia dapat Memberi tahu status ANC untuk memberi tahu Pencari tentang kemampuan ANC dan status tersimpannya. Pesan tersebut adalah sebagai berikut:
Byte | Jenis Data | Deskripsi | Nilai |
---|---|---|---|
0 | uint8 | Kontrol perangkat audio | 0x08 |
1 | uint8 | Memberi tahu status ANC | 0x13 |
2 - 3 | uint16 | Panjang data tambahan | 0x04 |
4 - 7 | Data kontrol ANC | berbeda-beda |
Data kontrol ANC
Byte | Jenis Data | Deskripsi | Nilai |
---|---|---|---|
0 | uint8 | Kode versi | bervariasi, 0x02 untuk versi ini |
1 | Tanda | Tombol UI Setiap mode diaktifkan (1) atau dinonaktifkan (0) sesuai dengan nilai bit tanda, sebagai berikut: Bit 0 (MSB): transparan Bit 1: adaptif (atau 0 jika tidak didukung) Bit 2: nonaktif Bit 3: Dicadangkan (Setel bit ke 0) Bit 4: ANC |
berbeda-beda |
2 | Tanda | Tombol yang dapat disetel Setiap atau semua bit tombol UI di atas juga dapat disetel di sini, untuk menunjukkan mana yang saat ini diaktifkan. |
berbeda-beda |
3 | Tanda | Status saat ini Hanya satu bit yang dapat ditetapkan dan nilai byte ini tidak boleh nol. |
berbeda-beda |
Seeker akan menampilkan UI tombol sesuai dengan data kontrol ANC.
Contoh 1: Penyedia mendukung ANC 3 arah: transparan - nonaktif - ANC & earbud dipakai di kepala, semua mode kini dapat disetel, dan status saat ini adalah nonaktif:
Byte | Jenis Data | Deskripsi | Nilai |
---|---|---|---|
0 | uint8 | Kode versi | 0x01 |
1 | Tanda | Tombol UI | 0b10101000 |
2 | Tanda | Tombol yang dapat disetel | 0b10101000 |
3 | Tanda | Status saat ini | 0b00100000 |
Contoh 2: Penyedia mendukung ANC 3 arah: transparan - nonaktif - ANC, hanya satu earbud yang terpasang di kepala atau tidak ada earbud yang terpasang di kepala, sehingga tidak ada mode yang dapat disetel, dan status saat ini adalah nonaktif:
Byte | Jenis Data | Deskripsi | Nilai |
---|---|---|---|
0 | uint8 | Kode versi | 0x01 |
1 | Tanda | Tombol UI | 0b10101000 |
2 | Tanda | Tombol yang dapat disetel | 0b00000000 |
3 | Tanda | Status saat ini | 0b00100000 |
Jika pengguna mengalihkan tombol, Seeker akan menyetel status saat ini ke Provider sebagai berikut:
Byte | Jenis Data | Deskripsi | Nilai |
---|---|---|---|
0 | uint8 | Kontrol perangkat audio | 0x08 |
1 | uint8 | Menetapkan status ANC | 0x12 |
2 - 3 | uint16 | Panjang data tambahan | bervariasi, 0x04 atau 0x14 |
4 | uint8 | Kode Versi Seeker | bervariasi, 0x01 atau 0x02 |
5 | Tanda | Mode yang Dapat Disetel ANC (tombol UI) | berbeda-beda |
6 | Tanda | Mode ANC Diaktifkan (Tombol yang dapat disetel) | berbeda-beda |
7 | Tanda | Indeks mode ANC baru (Status baru) | berbeda-beda |
8 - 23 | Direservasi | berbeda-beda |
Byte 4 - 7 sebenarnya adalah data kontrol ANC yang dikirim dari sisi Seeker. Jika nilai panjang tambahan ditetapkan sebagai 0x14, byte yang dicadangkan 8-23 akan ada dan saat menerima byte ini, penyedia harus mengabaikannya. Jika nilai panjang tambahan ditetapkan sebagai 0x04, tidak ada byte yang dicadangkan.
Saat menerima pesan "Setel status ANC", Penyedia harus Mengonfirmasi, dan Memberi tahu status ANC kepada semua Pencari yang terhubung. Jika pengguna mengubah setelan melalui gestur headset atau aplikasi pendamping, Penyedia juga harus mengirimkan notifikasi ke semua Pencari yang terhubung.
Contoh 3: Penyedia mendukung ANC 4 arah: transparan - adaptif - nonaktif - ANC, earbud terpasang di kepala, semua mode kini dapat disetel, dan status saat ini adalah adaptif:
Byte | Jenis Data | Deskripsi | Nilai |
---|---|---|---|
0 | uint8 | Kode versi | 0x01 |
1 | Tanda | Tombol UI | 0b11101000 |
2 | Tanda | Tombol yang dapat disetel | 0b11101000 |
3 | Tanda | Status saat ini | 0b01000000 |