ब्लूटूथ स्मार्ट ऑडियो

ब्लूटूथ लो एनर्जी ऑडियो (एलईए) की मदद से, उपयोगकर्ताओं को बैटरी लाइफ़ में कोई कमी आए बिना, हाई फ़िडेलिटी ऑडियो मिलता है. साथ ही, वे अलग-अलग तरह के कामों के बीच आसानी से स्विच कर सकते हैं. Android 13 (एपीआई लेवल 33) में, एलईए के साथ काम करने की सुविधा पहले से मौजूद है.

जब तक LEA सोर्स डिवाइस का मार्केट शेयर नहीं बढ़ता, तब तक ज़्यादातर LEA हेडसेट ड्यूअल मोड में काम करेंगे. उपयोगकर्ताओं को अपने ड्यूअल मोड हेडसेट पर, दोनों ट्रांसपोर्ट को पेयर और सेट अप करने की सुविधा मिलनी चाहिए.

इस्तेमाल के उदाहरण

इस्तेमाल के इन उदाहरणों के लिए, एलईए को इंटिग्रेट किया जा सकता है:

  • ऑडियो शेयर करना: उपयोगकर्ता एक साथ कई ऑडियो स्ट्रीम, एक या उससे ज़्यादा ऑडियो सिंक डिवाइसों पर शेयर कर सकते हैं. सोर्स डिवाइस और कनेक्ट किए गए डिवाइसों के बीच ऑडियो सिंक हो जाता है.

  • ऑडियो ब्रॉडकास्ट करना: उपयोगकर्ता, अपने दोस्तों और परिवार के लिए ऑडियो ब्रॉडकास्ट कर सकते हैं. साथ ही, जानकारी, मनोरंजन या सुलभता के लिए, सार्वजनिक ब्रॉडकास्ट से भी कनेक्ट कर सकते हैं.

  • LC3 ऑडियो कोडेक के साथ काम करना: यह डिफ़ॉल्ट ऑडियो कोडेक है. यह A2DP (मीडिया) और HFP (आवाज़) में इस्तेमाल किए जाने वाले SBC कोडेक की जगह लेता है. LC3 ज़्यादा असरदार, फिर से कॉन्फ़िगर किया जा सकने वाला, और बेहतर क्वालिटी वाला है.

  • ऑडियो सैंपलिंग में सुधार: माइक्रोफ़ोन का इस्तेमाल करते समय, हेडसेट की ऑडियो क्वालिटी बेहतर बनी रहती है. ब्लूटूथ माइक्रोफ़ोन का इस्तेमाल करने पर, ब्लूटूथ क्लासिक की ऑडियो क्वालिटी खराब हो जाती है. BLE ऑडियो की मदद से, इनपुट और आउटपुट सैंपलिंग 32 किलोहर्ट्ज़ तक पहुंच सकती है.

  • स्टीरियो माइक्रोफ़ोन: हेडफ़ोन, स्टीरियो माइक्रोफ़ोन की मदद से ऑडियो रिकॉर्ड कर सकते हैं. इससे स्पेस ऑडियो की क्वालिटी बेहतर होती है.

  • Hearing Aid Profile (HAP) की सुविधा: HAP, उपयोगकर्ताओं को ASHA के पिछले प्रोटोकॉल के मुकाबले ज़्यादा ऐक्सेस और इस्तेमाल की सुविधा देता है. उपयोगकर्ता अपनी कान की मशीनों का इस्तेमाल फ़ोन कॉल और VoIP ऐप्लिकेशन के लिए कर सकते हैं.

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

मुख्य स्थितियां

इस्तेमाल के उदाहरणों की चार मुख्य कैटगरी हैं:

  1. बातचीत करने वाला: डायलर और VoIP ऐप्लिकेशन, जिनमें इंतज़ार का समय कम करने की ज़रूरत होती है, उनमें अच्छी क्वालिटी का ऑडियो और बैटरी का कम इस्तेमाल करने की सुविधा मिलती है.

  2. गेमिंग: माइक्रोफ़ोन और हाई फ़िडेलिटी वाले ऑडियो को एक साथ चलाने की सुविधा की मदद से, गेम में अच्छी क्वालिटी का ऑडियो सुनने को मिलता है. जब कोई गेम ब्लूटूथ माइक्रोफ़ोन को इस्तेमाल के लिए तैयार करता है, तो गेमिंग ऐप्लिकेशन BLE ऑडियो इनपुट ऐक्सेस कर सकता है. इसके बाद, जब कोई खिलाड़ी, मिलते-जुलते ऐप्लिकेशन के साथ लाइव बातचीत शुरू करता है, तो गेम ऐप्लिकेशन बिना देरी के माइक्रोफ़ोन डेटा का इस्तेमाल कर सकता है.

  3. मीडिया: मीडिया ऐप्लिकेशन को ऑडियो मैनेजर का पसंदीदा डिवाइस सेट करने की अनुमति है. उपयोगकर्ता, सिस्टम की सेटिंग में जाकर, अपने पसंदीदा डिवाइस को बदलकर इसे बदल सकता है.

  4. सुलभता: BLE ऑडियो की सुविधा वाली सुनने की मशीनें अब माइक्रोफ़ोन का इस्तेमाल कर सकती हैं. इससे, उपयोगकर्ता कॉल के लिए सुनने की मशीनों का लगातार इस्तेमाल कर सकते हैं.

BLE Audio के एपीआई और तरीके

BLE ऑडियो हेअरबल के साथ काम करने के लिए, इन एपीआई और तरीकों की ज़रूरत होती है:

ऑडियो मैनेजर

  • setCommunicationDevice() वह ऑडियो डिवाइस चुनता है जिसका इस्तेमाल, बातचीत के उदाहरणों के लिए किया जाना चाहिए. उदाहरण के लिए, वॉइस या वीडियो कॉल. वॉइस या वीडियो चैट ऐप्लिकेशन, इस तरीके का इस्तेमाल करके प्लैटफ़ॉर्म पर डिफ़ॉल्ट रूप से चुने गए ऑडियो डिवाइस के बजाय, कोई दूसरा ऑडियो डिवाइस चुन सकते हैं. यह एपीआई, उन एपीआई की जगह लेगा जो अब काम नहीं करते: startBluetoothSco(), stopBluetoothSco(), और setSpeakerphoneOn().
  • clearCommunicationDevice() को तब कॉल किया जाता है, जब आपका ऐप्लिकेशन कोई कॉल या सेशन पूरा कर लेता है. इससे यह पक्का करने में मदद मिलती है कि उपयोगकर्ता को अलग-अलग ऐप्लिकेशन के बीच स्विच करते समय बेहतर अनुभव मिले.

BluetoothProfile

  • BluetoothLeAudio, प्रॉक्सी ऑब्जेक्ट के ज़रिए ब्लूटूथ सेवा को कंट्रोल करता है.

Telecom InCallService

  • InCallService#requestCallEndpointChange(), इस्तेमाल में न होने वाले InCallService.setAudioRoute() और InCallService.requestBluetoothAudio() एपीआई की जगह लेता है. इससे ऐप्लिकेशन, किसी खास CallEndpoint पर ऑडियो रूटिंग का अनुरोध कर सकते हैं. बदलाव का अनुरोध करते समय, क्लाइंट को खुद का CallEndpoint तय नहीं करना चाहिए. इसके बजाय, नया एंडपॉइंट InCallService.onAvailableCallEndpointsChanged(java.util.List) से मिले मान्य एंडपॉइंट में से एक होना चाहिए.
  • CallEndpoint.TYPE_BLUETOOTH ब्लूटूथ के ज़रिए ऑडियो स्ट्रीम को निर्देश देता है.
  • ऊपर बताए गए InCallService एपीआई, Android फ़ोन पर डिफ़ॉल्ट फ़ोन ऐप्लिकेशन या पहने जा सकने वाले डिवाइसों, वाहनों या अन्य ब्लूटूथ डिवाइसों जैसे कॉल करने के अन्य प्लैटफ़ॉर्म पर इस्तेमाल किए जा सकते हैं. इन डिवाइसों पर ऑडियो रूटिंग की सुविधा को कंट्रोल किया जा सकता है.

Telecom CallControl

  • एपीआई लेवल 34 में, नई CallControl क्लास को शामिल किया गया है. इसका मकसद, सिर्फ़ वीओआईपी ऐप्लिकेशन के लिए Connection और ConnectionService को बदलना है.
  • CallControl.requestCallEndpointChange() भी CallEndpoint बदलाव का अनुरोध करता है. यह एपीआई, अब काम न करने वाले Connection.requestBluetoothAudio() और Connection.setAudioRoute() एपीआई की जगह ले लेगा.
  • वॉइस और/या वीडियो कॉलिंग ऐप्लिकेशन बनाते समय, अपडेट किए गए Telecom प्लैटफ़ॉर्म एपीआई के अलावा, Telecom Jetpack लाइब्रेरी का इस्तेमाल करने का सुझाव दिया जाता है. इस लाइब्रेरी की मदद से, इंटिग्रेशन की प्रोसेस को आसानी से पूरा किया जा सकता है. साथ ही, Android के सभी प्लैटफ़ॉर्म पर VoIP कॉल की सुविधा को बेहतर बनाया जा सकता है.

ऑडियो डिवाइस की जानकारी

  • AudioDeviceInfo.TYPE_BLE_HEADSET इससे पता चलता है कि ऑडियो डिवाइस, LEA डिवाइस है. इसका इस्तेमाल यह पता लगाने के लिए किया जाता है कि स्मार्टवॉच, LEA डिवाइस है या नहीं.

ऑडियो रिकॉर्डर

  • setPreferredDevice() ऑडियो रूटिंग के लिए, इस्तेमाल किए जाने वाले डिवाइस को सेट करता है. उपयोगकर्ता, सिस्टम की सेटिंग में जाकर इसे बदल सकता है.

ब्लूटूथ अडैप्टर

  • isLeAudioSupported() अगर प्लैटफ़ॉर्म का हार्डवेयर LEA के साथ काम करता है, तो यह वैल्यू दिखती है.
  • isLeAudioBroadcastSourceSupported() अगर प्लैटफ़ॉर्म का हार्डवेयर LEA के साथ काम करता है, तो यह वैल्यू दिखती है.

इस्तेमाल के उदाहरण के आधार पर गाइड

यहां इस्तेमाल के उदाहरणों के आधार पर, एलईए लागू करने के दिशा-निर्देश दिए गए हैं.

वॉइस कम्यूनिकेशन ऐप्लिकेशन

वॉइस कम्यूनिकेशन ऐप्लिकेशन के पास, ऑडियो रूटिंग और डिवाइस की स्थिति को मैनेज करने का विकल्प होता है. इसके लिए, वे अपनी स्थिति को खुद मैनेज करते हैं या Telecom API का इस्तेमाल करते हैं. यह एपीआई, ऑडियो रूटिंग और स्थिति का लॉजिक मैनेज करता है.

इन दो तरीकों से, ऑडियो रूटिंग को तुरंत और आसानी से कंट्रोल किया जा सकता है. साथ ही, ब्लूटूथ डिवाइसों के बीच स्विच भी किया जा सकता है. ज़्यादा जानकारी के लिए, Telecom से मैनेज की जाने वाली कॉल गाइड देखें.

ऑडियो रिकॉर्ड करने वाले ऐप्लिकेशन

  • मीडिया रिकॉर्डर: मीडिया रिकॉर्डर का इस्तेमाल करके ऑडियो रिकॉर्ड करते समय, अब स्टीरियो में रिकॉर्ड किया जा सकता है. हालांकि, इसके लिए ज़रूरी है कि ब्लूटूथ हेडफ़ोन LEA के साथ काम करता हो. ऑडियो रिकॉर्डिंग गाइड देखें.

LE Audio (LEA) हेडसेट के सुझाव

एलईए हेडसेट के ज़्यादा वर्शन रिलीज़ होने के बाद, हमें असल दुनिया में जांच करने के दौरान कुछ समस्याएं मिली हैं. इनसे उपयोगकर्ता अनुभव खराब होता है. स्पेसिफ़िकेशन में इनमें से सभी समस्याओं के बारे में नहीं बताया गया है. नीचे दी गई टेबल में, उन सुझावों की सूची दी गई है जिन्हें एलईए हेडसेट बनाने वाली कंपनियों को अपनाना चाहिए. इससे Android इस्तेमाल करने वालों को बेहतर अनुभव मिलेगा.

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

अगर आपको अपने एलईए हेडसेट को सोर्स डिवाइसों के साथ सही तरीके से फिर से कनेक्ट करना है, तो टारगेट की गई सूचनाएं (टीएएस) के साथ काम करें.

LE Audio ईयरबड को सेंट्रल डिवाइसों से इनकमिंग कनेक्शन का अनुरोध करने के लिए टीएएस का इस्तेमाल करना चाहिए.

इसे आने वाले समय में BT SIG में जोड़ा जाएगा.

BR/EDR के पेजिंग मॉडल के उलट, जहां कनेक्शन को फ़ोन या हेडसेट से शुरू किया जा सकता है, वहीं LEA में कनेक्शन को मुख्य डिवाइस से शुरू किया जाना चाहिए. फ़िलहाल, कई हेडसेट, टीए का इस्तेमाल नहीं करते. इसका मतलब है कि सहायक डिवाइस को अनुमति वाली सूची में जोड़े बिना, मुख्य डिवाइस, उसके साथ फिर से कनेक्ट नहीं हो पाएगा. हालांकि, जिन लोगों या संगठनों को अनुमति मिली है उनकी सूची चुनने पर, हो सकता है कि हेडसेट किसी दूसरे सेंट्रल डिवाइस से कनेक्ट न हो पाए. इसलिए, यह ज़रूरी है कि एलईए हेडसेट, टीए के साथ सही तरीके से काम करें, ताकि मुख्य डिवाइस, कई पॉइंट कनेक्शन को तोड़ने वाले तरीकों के बिना, भरोसेमंद तरीके से फिर से कनेक्ट हो सके.
ड्यूअल मोड वाले ईयरबड को खोजने की सुविधा को ऑप्टिमाइज़ किया गया
  • प्राइमरी ईयरबड - BR/EDR कॉम्पोनेंट को अपने सार्वजनिक पते का इस्तेमाल करके विज्ञापन दिखाना चाहिए. साथ ही, EIR के ज़रिए उपलब्ध अपने नाम के साथ क्वेरी और पेज स्कैन की सुविधा चालू करनी चाहिए. साथ ही, डिवाइस क्लास (CoD) की मुख्य सेवा क्लास में LE ऑडियो बिट 14 से 1 पर सेट करना चाहिए.
  • प्राइमरी ईयरबड - LE कॉम्पोनेंट: प्राइमरी ईयरबड को, कनेक्ट किए जा सकने वाले और खोजे जा सकने वाले (सीमित या सामान्य) विज्ञापन दिखाने चाहिए. इसके लिए, उसे BR/EDR कॉम्पोनेंट के 'सार्वजनिक पता' और 'पूरा स्थानीय नाम' का इस्तेमाल करना चाहिए. साथ ही, उसकी 'दिखने की कैटगरी' को, रिमोट डिवाइस के टाइप से मैच करने वाली सही 'दिखने की कैटगरी' के तौर पर सेट किया जाना चाहिए. ऐसा इसलिए किया जाता है, ताकि सेंट्रल डिवाइस इस जानकारी का इस्तेमाल करके, अपने यूज़र इंटरफ़ेस (यूआई) और ऑडियो रूटिंग की नीतियों में बदलाव कर सके.
  • सेकंडरी ईयरबड - सिर्फ़ LE: सेकंडरी ईयरबड को, कनेक्ट किए जा सकने वाले और डिस्कवर नहीं किए जा सकने वाले विज्ञापन दिखाने चाहिए. साथ ही, उसकी दिखावट की कैटगरी को सही दिखावट की कैटगरी के तौर पर सेट किया जाना चाहिए. यह कैटगरी, रिमोट डिवाइस के टाइप से मेल खानी चाहिए. ऐसा इसलिए, ताकि मुख्य डिवाइस इस जानकारी का इस्तेमाल अपने यूज़र इंटरफ़ेस (यूआई) और ऑडियो रूटिंग की नीतियों में बदलाव करने के लिए कर सके

    ईयरबड को मुख्य डिवाइस के तौर पर, सीएसआईपी ग्रुप से किसी लीडर को डाइनैमिक तौर पर चुनना चाहिए. अगर ईयरबड ड्यूअल मोड में है, तो प्राइमरी डिवाइस भी ड्यूअल मोड में होना चाहिए. इससे यह पक्का किया जा सकेगा कि जोड़े जाने के बाद, LE और क्लासिक, दोनों मोड ठीक से काम करें.

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

डाइनैमिक लीडर इलेक्शन की सुविधा, खास तौर पर उन ड्यूअल-मोड डिवाइसों के लिए ज़रूरी है जिन्हें धीरे-धीरे जोड़ा जाता है. उदाहरण के लिए, अगर शुरुआती पेयरिंग के समय सिर्फ़ एक ईयरबड उपलब्ध है, तो उसे ड्यूअल-मोड डिवाइस के तौर पर दिखाया जाना चाहिए. जब कोई उपयोगकर्ता बाद में दूसरे ईयरबड से जुड़ता है, तो उसे सिर्फ़ LE कॉम्पोनेंट के साथ जोड़ना होता है. इसके बाद, CSIP यह पक्का करती है कि सभी उपयोगकर्ता, Android पर एक साथ ग्रुप किए गए हों.

हम डिवाइसों को जोड़ने के दौरान, आइडेंटिटी पते का सुझाव देते हैं. ऐसा इसलिए, क्योंकि BR/EDR कॉम्पोनेंट, आस-पास मौजूद डिवाइसों को डिवाइस का सार्वजनिक पता पहले से ही दिखाता है.

बेहतर एट्रिब्यूट प्रोटोकॉल (ईएटीटी) के साथ काम करना. इससे, डिवाइसों को जोड़ने और कनेक्शन में लगने वाला समय कम हो जाता है.
बेहतर GATT कैश मेमोरी की सुविधा का इस्तेमाल किया जा सकता है. इससे कनेक्शन में लगने वाला समय कम हो जाता है. खास तौर पर, TWS बड के लिए.
कनेक्शन की सबरेटिंग की सुविधा के साथ काम करता है. इसकी मदद से, पैकेट शेड्यूल करने की सुविधा को आसानी से शेड्यूल किया जा सकता है. साथ ही, बैटरी की संभावित बचत की जा सकती है.
पक्का करें कि प्लेबैक और कैप्चर, दोनों के लिए प्री- और पोस्ट-प्रोसेसिंग के दौरान, सिग्नल प्रोसेसिंग पाइपलाइन 16, 24, 32, और 48 किलोहर्ट्ज़ पर काम कर सके. साथ ही, यह फ़्रीक्वेंसी ज़्यादा फ़्रीक्वेंसी पर काम कर सके. यह LEA कॉल या VoIP कैप्चर पाथ और मीडिया चलाने के लिए, ज़्यादा सैंपलिंग रेट का फ़ायदा लेता है.
LE Power Control पर काम करें बेहतर पावर मैनेजमेंट

कॉन्टेक्स्ट टाइप के लिए सहायता

ब्यौरा संदर्भ
असाइन किए गए नंबर 6.12.3 में बताए गए सभी कॉन्टेक्स्ट टाइप का इस्तेमाल करें. ऐसा तब तक करें, जब तक हेडसेट किसी कॉन्टेक्स्ट टाइप के साथ काम न करता हो. उदाहरण के लिए, अगर कॉन्टेक्स्ट टाइप "गेम" काम नहीं करता है, तो Android गेम की साउंड भेजेगा. खास तौर पर, ध्यान दें कि "तय नहीं किया गया" कॉन्टेक्स्ट टाइप का मतलब "कोई भी कॉन्टेक्स्ट टाइप" नहीं है. साथ ही, इसमें ऐसे कॉन्टेक्स्ट टाइप शामिल नहीं होते जिनका इस्तेमाल नहीं किया जा सकता.

जब सेंट्रल डिवाइस, पेरिफ़रल डिवाइस के एएससीएस के साथ इंटरैक्ट करता है, तब पेरिफ़रल को सेंट्रल डिवाइस के एमसीएस और टीबीएस से कनेक्ट करना ज़रूरी होता है.

हो सकता है कि मुख्य डिवाइस, स्ट्रीमिंग के लिए हमेशा LE ऑडियो का इस्तेमाल न करे, क्योंकि वह A2DP या HFP का इस्तेमाल कर सकता है. पेरिफ़रल डिवाइस, ASCS इंटरैक्शन का इस्तेमाल इस बात के संकेत के तौर पर कर सकता है कि मुख्य डिवाइस, स्ट्रीमिंग के लिए LE ऑडियो का इस्तेमाल करेगा या नहीं.

ASCS इंटरैक्शन के कुछ उदाहरण पढ़े, लिखें, और सूचना के लिए रजिस्टर करें.