वर्शन: 1.3
पिछली बार अपडेट किया गया: 06-09-2024
Legend
प्रॉडक्ट की क्रिया | डेवलपमेंट ऐक्शन |
---|---|
"MUST" | प्रॉडक्ट के लिए ज़रूरी शर्त |
"होना चाहिए" | वैकल्पिक सुझाव |
"मई" | यह होना बढ़िया है |
खास जानकारी
इस दस्तावेज़ में, ChromeOS के साथ काम करने वाले यूएसबी और ब्लूटूथ की ज़रूरी शर्तों के बारे में बताया गया है स्पीकर-माइक का साथ मिलता है. यह खास जानकारी, WWCB प्रॉडक्ट के लिए नहीं है. साथ ही, यह किसी ऐसे प्रॉडक्ट के लिए भी नहीं है जिसे Chromebook के साथ डिज़ाइन और सर्टिफ़ाइड किया गया हो.
USB
सुरक्षा
2.4 GHz वायरलेस डोंगल
- 2.4 गीगाहर्ट्ज़ का वायरलेस डिवाइस, सिर्फ़ रिसीवर (डोंगल) के साथ अपने-आप जुड़ जाता है बॉक्स के साथ आता है.
- हेडसेट को किसी दूसरे रिसीवर से जोड़ने या नए हेडसेट को मौजूदा रिसीवर से जोड़ने के लिए, उपयोगकर्ता को डिवाइस पर या ऐप्लिकेशन की मदद से कार्रवाई करनी होगी.
- अगर किसी ऐप्लिकेशन के लिए हेडसेट/रिसीवर की जोड़ी में बदलाव करना ज़रूरी हो, तो ऐप्लिकेशन इस डिवाइस पर चलना चाहिए ChromeOS पर इंस्टॉल किए जा सकते हैं, जैसे कि किसी एक्सटेंशन के ज़रिए. यह ऐप्लिकेशन, वेब ऐप्लिकेशन भी हो सकता है. WebUSB/WebHID.
- अगर किसी एक्सटेंशन के ज़रिए दूसरे डिवाइस से जोड़ने की सुविधा लागू की जाती है, तो एक्सटेंशन सिर्फ़ यूएसबी पोर्ट को ऐक्सेस कर सकता है. कॉन्टेंट स्क्रिप्ट का इस्तेमाल करने की अनुमति नहीं है.
फ़र्मवेयर और कनेक्टर
- हेडसेट को सही ऑडियो इंटरफ़ेस के साथ ऑडियो डिवाइस के तौर पर पेश किया जाना चाहिए
(0x01) डिस्क्रिप्टर.
- इनपुट और आउटपुट दोनों के लिए एक-एक डिस्क्रिप्टर होना चाहिए
टर्मिनल.
- हमारा सुझाव है कि यूएसबी ऑडियो क्लास (यूएसी) टर्मिनल टाइप की रिपोर्ट करें
- हेडसेट (0x0402)
- SpeakerPhone (0x0403-0x0405) को अपनाएं.
- हमारा सुझाव है कि यूएसबी ऑडियो क्लास (यूएसी) टर्मिनल टाइप की रिपोर्ट करें
- इनपुट और आउटपुट दोनों के लिए एक-एक डिस्क्रिप्टर होना चाहिए
टर्मिनल.
- अगर इसमें कोई बटन है, तो उसे एचआईडी के तौर पर दिखाना होगा.
- हेडसेट को WWCB फ़र्मवेयर और कनेक्टर के साथ काम करना चाहिए ज़रूरी शर्तें.
सॉफ़्टवेयर
फ़ॉर्मैट
कृपया ऑडियो फ़ॉर्मैट देखें.
डिवाइस के लिए, इनपुट और आउटपुट, दोनों ऑडियो इंटरफ़ेस डिस्क्रिप्टर होने चाहिए.
ऑडियो इंटरफ़ेस ब्यौरे का उदाहरण
Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 0 iInterface 0
अगर इनपुट और आउटपुट के सैंपल रेट अलग-अलग हैं, तो डिवाइस के लिए यह ज़रूरी है
पर एक ही समय में अलग-अलग सैंपल रेट पर प्लेबैक और कैप्चर करने की सुविधा मिल सकती है.
अगर ऐसा नहीं होता है, तो डिवाइस पर AudioStreaming में वही वैल्यू होनी चाहिए
इंटरफ़ेस का ब्यौरा देने वाला -> tSamFreq
.
48k यूएसबी ऑडियो आउटपुट सैंपल रेट का उदाहरण
AudioStreaming Interface Descriptor: bLength 11 bDescriptorType 36 bDescriptorSubtype 2 (FORMAT_TYPE) bFormatType 1 (FORMAT_TYPE_I) bNrChannels 2 bSubframeSize 2 bBitResolution 16 bSamFreqType 1 Discrete tSamFreq[ 0] 48000 Endpoint Descriptor: bLength 9 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT(Output) bmAttributes 9 Transfer Type Isochronous Synch Type Adaptive Usage Type Data
44.1 हज़ार यूएसबी ऑडियो इनपुट के सैंपल रेट का उदाहरण
AudioStreaming Interface Descriptor: bLength 11 bDescriptorType 36 bDescriptorSubtype 2 (FORMAT_TYPE) bFormatType 1 (FORMAT_TYPE_I) bNrChannels 2 bSubframeSize 2 bBitResolution 16 bSamFreqType 1 Discrete tSamFreq[ 0] 44100 Endpoint Descriptor: bLength 9 bDescriptorType 5 bEndpointAddress 0x81 EP 1 In(Input) bmAttributes 9 Transfer Type Isochronous Synch Type Adaptive Usage Type Data
एचआईडी कोड
- हर एचआईडी इवेंट के लिए, यह एक बार में सिर्फ़ एक इवेंट को ट्रांसमिट कर सकता है.
- सही इवेंट कोड और उससे जुड़ा इवेंट कोड तब मिलना चाहिए, जब
बटन दबाया जाता है.
- उदाहरण के लिए, आवाज़ बढ़ाएं.
evtest
सिर्फ़ एक वॉल्यूम तेज़ होने वाले इवेंट को देख सकता है और कोड
KEY_VOLUME_UP
.
- उदाहरण के लिए, आवाज़ बढ़ाएं.
evtest
सिर्फ़ एक वॉल्यूम तेज़ होने वाले इवेंट को देख सकता है और कोड
- अगर नीचे दी गई सुविधाओं को देने के लिए कोई इंटरफ़ेस डिज़ाइन किया गया है, तो यूएसबी सहायक डिवाइस (जैसे, कीबोर्ड, माउस, मॉनिटर, वेबकैम वगैरह) में, एचआईडी को बाहर निकालने या पाने की सुविधा होनी चाहिए USB.org एचआईडी के मुताबिक इवेंट खास जानकारी.
उपभोक्ता पेज (0x0c)
कुंजी का नाम | एचआईडी के इस्तेमाल से जुड़ा आईडी | इस्तेमाल का टाइप |
---|---|---|
KEY_PLAY |
0x0b0 |
OOC |
KEY_PAUSE |
0x0b1 |
ओओसी |
KEY_NEXTSONG |
0x0b5 |
ओएससी |
KEY_PREVIOUSSONG |
0x0b6 |
ओएससी |
KEY_STOPCD |
0x0b7 |
ओएससी |
KEY_PLAYPAUSE |
0x0cd |
ओएससी |
KEY_PREVIOUSSONG |
0x0b6 |
ओएससी |
KEY_MUTE |
0x0e2 |
OOC |
KEY_VOLUMEUP |
0x0e9 |
RTC |
KEY_VOLUMEDOWN |
0x0ea |
RTC |
टेलीफ़ोनी पेज (0x0b)
कुंजी का नाम | एचआईडी के इस्तेमाल से जुड़ा आईडी | इस्तेमाल का टाइप |
---|---|---|
हुक स्विच | 0x20 |
OOC |
रिंगर | 0x9e |
ओओसी |
एलईडी पेज (0x08)
कुंजी का नाम | एचआईडी के इस्तेमाल से जुड़ा आईडी | इस्तेमाल का टाइप |
---|---|---|
म्यूट करें | 0x09 |
ओओसी |
ऑफ-हुक | 0x17 |
OOC |
घंटी चालू है | 0x18 |
OOC |
जैक का पता लगाना
अगर कोई यूएसबी डिवाइस, यूएसबी ऑडियो क्लास (यूएसी) के साथ काम नहीं करता है, तो ChromeOS के सिस्टम ट्रे में हमेशा एक आउटपुट नोड दिखेगा. हालांकि, अगर यूएसबी डिवाइस यूएसी के मुताबिक, सिस्टम 3.5 मि॰मी॰ के ऑडियो जैक का सही तरीके से पता लगा पाएगा. डिवाइस शामिल किया गया.
- CrOS में 3.5-मिमी जैक के लिए, डिवाइस के इस्तेमाल में होने की पहचान करने की सुविधा का इस्तेमाल करना ज़रूरी है
ब्लूटूथ से जुड़ी सामान्य ज़रूरी शर्तें
ChromeOS के साथ काम करने वाले डिवाइसों के लिए ब्लूटूथ स्पेसिफ़िकेशन देखें.
ऑडियो फ़ॉर्मैट
वीडियो चलाएं | रिकॉर्ड किया गया | |
---|---|---|
सैंपल रेट | ≥ 16 किलोहर्ट्ज़ | ≥ 16 किलोहर्ट्ज़ |
फ़ॉर्मैट | S16_LE | S16_LE |
- चैनल नंबर और कॉन्फ़िगरेशन सही होना चाहिए.
- हेडसेट के लिए जिन सैंपलिंग रेट का एलान किया गया है वे सभी सही तरीके से काम करने चाहिए.
- मापी गई दर और सैंपलिंग रेट के बीच का अंतर ≤ 0.1% होना चाहिए.
- मेज़र की गई दर के लीनियर रिग्रेशन के लिए स्टैंडर्ड गड़बड़ी, 30 से कम होनी चाहिए.
हेडसेट में, अलग-अलग सैंपल रेट पर ऑडियो चलाने या रिकॉर्ड करने की सुविधा होनी चाहिए.
उदाहरण के लिए, 44.1 किलोहर्ट्ज़ (kHz) से कम के ऑडियो चलाएं, लेकिन 48 किलोहर्ट्ज़ (kHz) से कम की आवाज़ कैप्चर करें साथ-साथ
- ऐसा न करने पर, ChromeOS को उसे सिस्टम साइड पर होने से रोकता है.
ऑडियो की क्वालिटी
पाथ कैप्चर करना - म्यूट करना
- अगर उपयोगकर्ताओं के लिए, ऑडियो डिवाइस को म्यूट करने का विकल्प मौजूद है, तो उसे
- म्यूट की स्थिति को इस तरह से बनाए रखें कि इन पर इसका असर न पड़े:
- डिवाइस को खोला और बंद किया जा रहा है.
- किसी दूसरे इनपुट डिवाइस पर स्विच करना.
ऑडियो के लिए इंतज़ार का समय
इंतज़ार का समय
- आउटपुट में इंतज़ार का समय
- ऑडियो चलाने की कार्रवाई शुरू करने के बाद, ऑडियो चलाना 500 मिलीसेकंड से कम समय में शुरू होना चाहिए.
- अगर डिवाइस के OEM यह साबित कर सकते हैं कि इस शर्त को पूरा न करने पर भी कोई गूंज नहीं होती, तो वे छूट का अनुरोध कर सकते हैं.
- ऑडियो चलाने की कार्रवाई शुरू करने के बाद, ऑडियो चलाना 500 मिलीसेकंड से कम समय में शुरू होना चाहिए.
ऑडियो/वीडियो सिंक
- ऑडियो प्लेबैक, वीडियो प्लेबैक के साथ सिंक होना चाहिए. ऑडियो चलाने में, वीडियो के मुकाबले 25 मिलीसेकंड तक का अंतर हो सकता है. इसके अलावा, ऑडियो के मुकाबले वीडियो में 95 मिलीसेकंड तक का अंतर हो सकता है.
बदलाव का इतिहास
तारीख | वर्शन | नोट |
---|---|---|
2024-09-06 | 1.3 | ChromeOS के साथ काम करने वाला स्पेसिफ़िकेशन मिला. शुरुआती पार्टनर साइट का पब्लिकेशन. |
2022-09-14 | 1.2 | वर्शन 1.2 में अपडेट किया गया. |
2022-08-19 | 1.1 | इसे v1.1 पर अपडेट किया गया. |
2022-08-18 | 1.0 | इससे जुड़े WWCB स्पेसिफ़िकेशन बनाए गए. |