कान में लगाने वाले डिवाइसों को कंट्रोल करना

फ़ास्ट पेयर की सुविधा के साथ, हेडफ़ोन या ईयरबड के कंट्रोल का मकसद, Android डिवाइसों पर हेडफ़ोन या ईयरबड की ज़रूरी सुविधाओं को बेहतर तरीके से ऐक्सेस करने की सुविधा देना है. इसके लिए, मैसेज स्ट्रीम में एक नया मैसेज ग्रुप जोड़ा गया है. इसमें, Hearable डिवाइसों के कंट्रोल शामिल हैं.

मैसेज ग्रुप का नाम मान
कान में लगाने वाले डिवाइस को कंट्रोल करना 0x08

शोर को कंट्रोल करने की सुविधा

शोर को कंट्रोल करने की सुविधा, प्रीमियम हेडफ़ोन की मुख्य सुविधा बन रही है. डिवाइस ढूंढने वाले डिवाइस पर, फ़ास्ट पेयर में यूज़र इंटरफ़ेस (यूआई) और लॉजिक होगा, ताकि स्थिति को सेट, ऐक्सेस, और सेव किया जा सके. साथ ही, स्थिति को डिवाइस से कनेक्ट करने वाले डिवाइस पर सेव किया जाएगा. इवेंट स्ट्रीम कनेक्ट होने पर, सेवा देने वाली कंपनी के लिए सेशन नॉन्स भेजना ज़रूरी है. इसके लिए, मैसेज के लिए ये कोड तय किए गए हैं:

मैसेज कोड का नाम मान प्रेषक जवाब देने वाला व्यक्ति MAC ACK
ANC की स्थिति पाना 0x11 Seeker सेवा देने वाली कंपनी नहीं नहीं
एएनसी की स्थिति सेट करना 0x12 Seeker सेवा देने वाली कंपनी Y Y
ANC की स्थिति की सूचना देना 0x13 सेवा देने वाली कंपनी Seeker नहीं नहीं

जब कोई सीकर किसी प्रोवाइडर से कनेक्ट होता है या जब किसी प्रोवाइडर को "ANC की स्थिति पाएं" मैसेज मिलता है, तो प्रोवाइडर, ANC की स्थिति की सूचना दे सकता है, ताकि सीकर को ANC की सुविधा और सेव की गई स्थिति के बारे में पता चल सके. मैसेज इस तरह का है:

बाइट डेटा टाइप ब्यौरा मान
0 uint8 कान में लगाने वाले डिवाइस को कंट्रोल करना 0x08
1 uint8 ANC की स्थिति की सूचना देना 0x13
2 - 3 uint16 अतिरिक्त डेटा की लंबाई 0x04
4 से 7 ANC कंट्रोल डेटा अलग-अलग होता है
ANC कंट्रोल डेटा
बाइट डेटा टाइप ब्यौरा मान
0 uint8 वर्शन का कोड अलग-अलग,इस वर्शन के लिए 0x02
1 झंडे यूज़र इंटरफ़ेस टॉगल
हर मोड, अपने फ़्लैग बिट की वैल्यू के हिसाब से चालू (1) या बंद (0) होता है. जैसे:
बिट 0 (एमएसबी): ट्रांसफ़रेंट
बिट 1: रिज़र्व (बिट को 0 पर सेट करें)
बिट 2: बंद
बिट 3: रिज़र्व (बिट को 0 पर सेट करें)
बिट 4: एएनसी
अलग-अलग होता है
2 झंडे सेट किए जा सकने वाले टॉगल
ऊपर दिए गए यूज़र इंटरफ़ेस (यूआई) टॉगल बिट में से किसी एक या सभी को यहां सेट किया जा सकता है. इससे यह पता चलता है कि फ़िलहाल कौनसे टॉगल चालू हैं.
अलग-अलग होता है
3 झंडे मौजूदा स्थिति
सिर्फ़ एक बिट सेट किया जा सकता है और इस बाइट की वैल्यू शून्य नहीं होनी चाहिए.
अलग-अलग होता है

सर्च बार, ANC कंट्रोल डेटा के हिसाब से टॉगल यूज़र इंटरफ़ेस (यूआई) दिखाएगा.

पहला उदाहरण: डिवाइस में तीन तरह के ANC मोड काम करते हैं: ट्रांसपेरेंट - बंद - ANC मोड और बड, सिर पर पहने हुए हैं. अब सभी मोड सेट किए जा सकते हैं और मौजूदा स्थिति बंद है:

बाइट डेटा टाइप ब्यौरा मान
0 uint8 वर्शन का कोड 0x01
1 झंडे यूज़र इंटरफ़ेस (यूआई) टॉगल 0b10101000
2 झंडे सेट किए जा सकने वाले टॉगल 0b10101000
3 झंडे मौजूदा स्थिति 0b00100000

दूसरा उदाहरण: डिवाइस में तीन तरह के ANC मोड काम करते हैं: ट्रांसपेरेंट - बंद - ANC. फ़िलहाल, सिर्फ़ एक बड का इस्तेमाल किया जा रहा है या कोई बड इस्तेमाल नहीं किया जा रहा है. इसलिए, कोई भी मोड सेट नहीं किया जा सकता और मौजूदा स्थिति 'बंद है' है:

बाइट डेटा टाइप ब्यौरा मान
0 uint8 वर्शन का कोड 0x01
1 झंडे यूज़र इंटरफ़ेस (यूआई) टॉगल 0b10101000
2 झंडे सेट किया जा सकने वाला टॉगल 0b00000000
3 झंडे मौजूदा स्थिति 0b00100000

अगर उपयोगकर्ता टॉगल को स्विच करता है, तो Seeker, मौजूदा स्थिति को प्रोवाइडर पर इस तरह से सेट करेगा:

बाइट डेटा टाइप ब्यौरा मान
0 uint8 कान में लगाने वाले डिवाइस को कंट्रोल करना 0x08
1 uint8 एएनसी की स्थिति सेट करना 0x12
2 - 3 uint16 अतिरिक्त डेटा की लंबाई अलग-अलग, 0x04 या 0x14
4 uint8 दर्शक का वर्शन कोड अलग-अलग, 0x01 या 0x02
5 झंडे ANC के सेट किए जा सकने वाले मोड (यूज़र इंटरफ़ेस टॉगल) अलग-अलग होता है
6 झंडे ANC मोड (टॉगल सेट किया जा सकता है) अलग-अलग होता है
7 झंडे ANC मोड का नया इंडेक्स (नई स्थिति) अलग-अलग होता है
8 से 23 बुकिंग की गई अलग-अलग होता है

असल में, चौथा से सातवां बाइट, ANC कंट्रोल डेटा होता है, जिसे सर्चर साइड से भेजा जाता है. अगर अतिरिक्त लंबाई की वैल्यू 0x14 पर सेट की जाती है, तो 8 से 23 तक के बाइट रिज़र्व रहेंगे. इन बाइट को मिलने पर, सेवा देने वाली कंपनी को इन्हें अनदेखा करना चाहिए. अगर अतिरिक्त लंबाई की वैल्यू 0x04 पर सेट है, तो कोई रिज़र्व बाइट मौजूद नहीं है.

जब किसी प्रोवाइडर को "ANC की स्थिति सेट करें" मैसेज मिलता है, तो उसे पुष्टि करनी चाहिए और कनेक्ट किए गए सभी सीकर को ANC की स्थिति की सूचना देनी चाहिए. अगर उपयोगकर्ता हेडसेट के जेस्चर या साथ में काम करने वाले ऐप्लिकेशन की मदद से सेटिंग बदलता है, तो सेवा देने वाली कंपनी को कनेक्ट किए गए सभी सीकर को भी सूचना भेजनी चाहिए.