İşitilebilir Cihaz Kontrolleri

Hızlı Eşleme'deki işitilebilir cihaz kontrolleri, Android'deki önemli işitilebilir cihaz özelliklerine daha iyi erişim kontrolleri sağlamayı amaçlar. Bunu sağlamak için Mesaj Akışı'na yeni bir mesaj grubu olan "İşitme cihazı kontrolleri" eklendi.

Mesaj Grubu Adı Değer
İşitilebilir cihaz kontrolü 0x08

Aktif gürültü kontrolü

Aktif gürültü kontrolü, premium kulaklıkların öne çıkan bir özelliği haline geliyor. Arayan tarafında Hızlı Eşleme, durumu ayarlamak, almak ve kaydetmek için kullanıcı arayüzüne ve mantığa sahip olacak. Durum, Sağlayıcı tarafında saklanacak. Etkinlik akışı bağlandığında sağlayıcının Oturum Nonce göndermesi zorunludur. Bunu yapmak için aşağıdaki mesaj kodları tanımlanır:

Mesaj Kod Adı Değer Gönderen Katılımcı MAC ACK
ANC durumunu alma 0x11 Seeker Sağlayıcı H H
ANC durumunu ayarlama 0x12 Seeker Sağlayıcı Y Y
ANC durumunu bildir 0x13 Sağlayıcı Seeker H H

Bir Arayan, Sağlayıcıya bağlandığında veya Sağlayıcı "ANC durumunu al" mesajı aldığında Sağlayıcı, Arayan'a ANC özelliğini ve kayıtlı durumunu bildirmek için ANC durumunu bildirebilir. İleti şu şekildedir:

Bayt Veri Türü Açıklama Değer
0 uint8 İşitilebilir cihaz kontrolü 0x08
1 uint8 ANC durumunu bildir 0x13
2 - 3 uint16 Ek veri uzunluğu 0x04
4 - 7 ANC kontrol verileri değişir
ANC kontrol verileri
Bayt Veri Türü Açıklama Değer
0 uint8 Sürüm kodu değişir, bu sürüm için 0x02
1 Bayraklar Kullanıcı arayüzü açma/kapatma düğmeleri
Her mod, işaret bitinin değerine göre etkin (1) veya devre dışı (0) bırakılır.
Bit 0 (MSB): şeffaf
Bit 1: uyarlanabilir (veya desteklenmiyorsa 0)
Bit 2: kapalı
Bit 3: ayrılmış (biti 0 olarak ayarlayın)
Bit 4: ANC
değişir
2 Bayraklar Ayarlanabilir açma/kapatma düğmeleri
Yukarıdaki kullanıcı arayüzü açma/kapatma düğmelerinin herhangi biri veya tümü, hangilerinin etkin olduğunu belirtmek için burada da ayarlanabilir.
değişir
3 Bayraklar Mevcut durum
Yalnızca bir bit ayarlanabilir ve bu baytın değeri sıfır olmamalıdır.
değişir

Arayan, ANC kontrol verilerine göre açma/kapatma kullanıcı arayüzünü gösterir.

1. örnek: Sağlayıcı, 3 yönlü ANC'yi destekliyor: şeffaf - kapalı - ANC ve kulaklıklar kafada, tüm modlar ayarlanabilir ve mevcut durum kapalı:

Bayt Veri Türü Açıklama Değer
0 uint8 Sürüm kodu 0x01
1 Bayraklar Kullanıcı arayüzü açma/kapatma düğmeleri 0b10101000
2 Bayraklar Ayarlanabilir açma/kapatma düğmeleri 0b10101000
3 Bayraklar Geçerli durum 0b00100000

2. örnek: Sağlayıcı, 3 yönlü ANC'yi destekliyor: şeffaf - kapalı - ANC. Şu anda yalnızca bir kulaklık baş üzerinde veya hiç kulaklık baş üzerinde değil. Bu nedenle hiçbir mod ayarlanamıyor ve mevcut durum kapalı:

Bayt Veri Türü Açıklama Değer
0 uint8 Sürüm kodu 0x01
1 Bayraklar Kullanıcı arayüzü açma/kapatma düğmesi 0b10101000
2 Bayraklar Ayarlanabilir açma/kapatma düğmesi 0b00000000
3 Bayraklar Geçerli durum 0b00100000

Kullanıcı açma/kapatma düğmesini değiştirirse Seeker, mevcut durumu aşağıdaki gibi Sağlayıcı olarak ayarlar:

Bayt Veri Türü Açıklama Değer
0 uint8 İşitilebilir cihaz kontrolü 0x08
1 uint8 ANC durumunu ayarlama 0x12
2 - 3 uint16 Ek veri uzunluğu değişir, 0x04 veya 0x14
4 uint8 Seeker sürüm kodu değişir, 0x01 veya 0x02
5 Bayraklar Ayarlanabilir ANC modları (kullanıcı arayüzü geçişi) değişir
6 Bayraklar ANC'nin etkin olduğu modlar (ayarlanabilir açma/kapatma düğmesi) değişir
7 Bayraklar Yeni ANC modu dizini (Yeni durum) değişir
8 - 23 Rezervasyon yapıldı değişir

4-7 baytları, aslında Seeker tarafından gönderilen ANC kontrol verileridir. Ek uzunluk değeri 0x14 olarak ayarlanırsa ayrılmış baytlar 8-23 mevcut olur ve bu baytlar alındığında sağlayıcı bunları yoksaymalıdır. Ek uzunluk değeri 0x04 olarak ayarlanırsa ayrılmış bayt olmaz.

Bir Sağlayıcı "Set ANC state" (ANC durumunu ayarla) mesajı aldığında Acknowledge (Onayla) etmeli ve ANC durumunu bağlı tüm Arayanlara bildirmelidir. Kullanıcı, ayarı kulaklık hareketi veya yardımcı uygulama üzerinden değiştirirse Sağlayıcı, bağlı tüm Arayanlara da bildirim göndermelidir.

3. örnek: Sağlayıcı, 4 yönlü ANC'yi destekliyor: şeffaf - uyarlanabilir - kapalı - ANC, kulaklıklar baş üzerinde, tüm modlar ayarlanabilir ve mevcut durum uyarlanabilir:

Bayt Veri Türü Açıklama Değer
0 uint8 Sürüm kodu 0x01
1 Bayraklar Kullanıcı arayüzü açma/kapatma düğmesi 0b11101000
2 Bayraklar Ayarlanabilir açma/kapatma düğmesi 0b11101000
3 Bayraklar Geçerli durum 0b01000000