दर्शक: यह लेख ऑडियो फर्मवेयर इंजीनियरों और प्रोक्योरमेंट अधिकारियों के लिए है जिन्हें रीडिंग पेन लाइन पर माइक्रोफोन AGC व्यवहार का मूल्यांकन या विशिष्टता तय करनी होती है। यह मानता है कि आप पहले से समझते हैं कि माइक्रोफोन क्या कैप्चर करता है और अब आपको एक सुस्पष्ट AGC विशिष्टता चाहिए जो शांत घरेलू उपयोग, शोर वाली कक्षाओं और इंटरकॉम मोड में समान रूप से काम करे।
एक रीडिंग पेन 5 सेमी पर फुसफुसाते 3 साल के बच्चे की 'बिल्ली' सुनता है और 15 सेमी पर ज़ोर से पढ़ते 10 साल के बच्चे को सुनता है। फुसफुसाहट माइक्रोफोन पर −35 dBFS पर पहुँचती है, जबकि ज़ोर से पढ़ना −8 dBFS पर — यह 27 dB की सीमा ASR इंजन और इंटरकॉम डाउनलिंक दोनों बिना सहायता के संभाल नहीं सकते। ऑटोमैटिक गेन कंट्रोल (AGC) वह एल्गोरिद्म है जो माइक्रोफोन स्तर को सामान्य करता है ताकि शांत भाषण सुनने योग्य हो जाए और तेज़ भाषण क्लिप न हो। 11 उत्पादन मॉडलों (B1, B2, F8, K7, KF1, L5, P2, Q6, Q8, T2, Y6) में, AGC ऑडियो पाइपलाइन में AEC के बाद और DRC से पहले स्थित होता है, और इसकी ट्यूनिंग फ़ील्ड अपडेट में हमारे द्वारा ठीक की जाने वाली तीन सबसे अधिक उद्धृत फर्मवेयर रिग्रेशन में से एक है। यह लेख बताता है कि रीडिंग पेन पर AGC कैसे काम करता है, इसे प्रति प्लेटफ़ॉर्म अलग-अलग कैसे ट्यून किया जाता है, और क्रय अनुबंध में इसे कैसे निर्दिष्ट किया जाए ताकि पेन शांत डेस्क पर और शोर वाले खेल के मैदान पर एक जैसा व्यवहार करे।
1. रीडिंग पेन पर AGC फ़ोन की तुलना में क्यों कठिन है
रीडिंग पेन AGC को चार परिदृश्य संभालने होते हैं जो फ़ोन AGC को नहीं होते। पहला, स्पीकर-से-माइक्रोफोन दूरी 1 सेमी (बच्चे की नोक में फुसफुसाहट) से 30 सेमी (कमरे भर में वॉइस सर्च के लिए डेस्क पर रखा पेन) तक होती है — यह 30 dB की सीमा फ़ोन कभी नहीं देखता क्योंकि फ़ोन हमेशा मुँह से 5–15 सेमी दूर रहता है। दूसरा, पेन इंटरकॉम मोड में चलता है जहाँ माइक्रोफोन बच्चे की आवाज़ नहीं बल्कि कमरे के उस पार से माता-पिता की आवाज़ कैप्चर करता है, जो एक अलग ध्वनिक प्रोफ़ाइल है। तीसरा, पेन वॉइस सर्च में चलता है जहाँ उपयोगकर्ता एक शब्द या छोटा वाक्य बोलता है, फिर उत्तर की प्रतीक्षा करता है — AGC को निरंतर बातचीत के बजाय एक ही उच्चारण के भीतर कन्वर्ज होना होता है। चौथा, पेन AEC डबलटॉक के दौरान चलता है जहाँ स्पीकर चल रहा होता है और माइक्रोफोन एक साथ कैप्चर कर रहा होता है, और AGC को कथन खंडों के बीच मौन अंतराल में गेन को ऊपर नहीं पंप करना चाहिए।
फ़ोन AGC के पीछे दशकों की ट्यूनिंग है और अपेक्षाकृत संकरा ऑपरेटिंग एनवलप है। रीडिंग पेन AGC को बहुत कम ट्यूनिंग इतिहास के साथ बहुत चौड़ा एनवलप संभालना होता है। यही कारण है कि हर प्लेटफ़ॉर्म पर रीडिंग पेन फर्मवेयर AGC पैरामीटर्स को कॉन्फ़िगरेशन फ़ाइल में उजागर करता है जिसे प्रति प्रोग्राम और प्रति भाषा ट्यून किया जा सकता है — ऐसा कोई एकल AGC सेटिंग नहीं है जो सभी 11 मॉडलों पर काम करे।
2. चार AGC पैरामीटर जो मायने रखते हैं
AGC के चार पैरामीटर हैं जो इसके व्यवहार को निर्धारित करते हैं। टार्गेट लेवल वह dBFS मान है जिसकी ओर AGC माइक्रोफोन सिग्नल को ले जाने का प्रयास करता है — आमतौर पर ASR के लिए −12 से −18 dBFS और इंटरकॉम के लिए −20 से −26 dBFS। अटैक टाइम वह गति है जिससे AGC इनपुट टार्गेट से तेज़ होने पर गेन कम करता है — प्लोसिव क्लिपिंग से बचने के लिए भाषण के लिए आमतौर पर 5–20 ms। रिलीज़ टाइम वह गति है जिससे AGC इनपुट टार्गेट से शांत होने पर गेन बढ़ाता है — संक्षिप्त विराम पर पंपिंग से बचने के लिए आमतौर पर 200–800 ms। कम्प्रेश्वन रेशियो टार्गेट के ऊपर यह निर्धारित करता है कि AGC तेज़ सिग्नल को कितनी आक्रामकता से सीमित करता है — आमतौर पर ASR के लिए 2:1 से 4:1 और इंटरकॉम के लिए 1.5:1 से 2:1।
इन चार पैरामीटरों के बीच अंतःक्रिया सहज नहीं है। तेज़ अटैक और धीमी रिलीज़ भाषण के लिए पाठ्यपुस्तक सेटिंग है, लेकिन कथन खंडों के बीच संक्षिप्त मौन वाले रीडिंग पेन पर, धीमी रिलीज़ के कारण AGC खंडों के बीच गेन ऊपर पंप करता है, जो फिर अगले खंड के पहले फ़ोनिम पर क्लिप करता है। L5, T2, Y6 पर फर्मवेयर एक 'स्पीच-प्रेज़ेंस-अवेयर' रिलीज़ का उपयोग करता है जो AEC रेफ़रेंस सिग्नल सक्रिय होने पर गेन को स्थिर रखता है, जो पंपिंग आर्टिफ़ैक्ट को रोकता है।
3. प्रति-मॉडल AGC बेसलाइन
नीचे दी गई तालिका 11 उत्पादन मॉडलों में AGC ट्यूनिंग को सारांशित करती है। 'टार्गेट लेवल' वह dBFS है जिसका AGC ASR कैप्चर के दौरान लक्ष्य रखता है; 'अटैक' और 'रिलीज़' ms में टाइम कॉन्स्टेंट हैं; 'रेशियो' टार्गेट के ऊपर कम्प्रेश्वन रेशियो है; 'रेंज' वह अधिकतम गेन है जो AGC dB में लागू करेगा।
| मॉडल | टार्गेट लेवल | अटैक | रिलीज़ | रेशियो | अधिकतम गेन | उपयोग का उद्देश्य | फर्मवेयर |
|---|---|---|---|---|---|---|---|
| B1 | −16 dBFS | 12 ms | 400 ms | 3:1 | 24 dB | ASR | 2.4.7 |
| B2 | −16 dBFS | 12 ms | 400 ms | 3:1 | 24 dB | ASR | 2.4.7 |
| F8 | −14 dBFS | 15 ms | 350 ms | 2.5:1 | 20 dB | ASR | 3.1.2 |
| K7 | −18 dBFS | 10 ms | 300 ms | 3:1 | 30 dB | ASR + इंटरकॉम | 1.9.5 |
| KF1 | −18 dBFS | 10 ms | 300 ms | 3:1 | 30 dB | ASR + इंटरकॉम | 1.9.5 |
| L5 | −16 dBFS | 8 ms | 250 ms | 3:1 | 36 dB | ASR + इंटरकॉम + वॉइस सर्च | 4.2.0 |
| P2 | −14 dBFS | 15 ms | 350 ms | 2.5:1 | 20 dB | ASR | 2.0.3 |
| Q6 | −18 dBFS | 10 ms | 300 ms | 3:1 | 30 dB | ASR + इंटरकॉम | 3.3.1 |
| Q8 | −18 dBFS | 10 ms | 300 ms | 3:1 | 30 dB | ASR + इंटरकॉम | 3.3.1 |
| T2 | −16 dBFS | 8 ms | 200 ms | 3:1 | 36 dB | ASR + इंटरकॉम + वॉइस सर्च | 2.6.4 |
| Y6 | −16 dBFS | 8 ms | 250 ms | 3:1 | 36 dB | ASR + इंटरकॉम + वॉइस सर्च | 2.6.4 |
पैटर्न स्पष्ट है। L5, T2, Y6 प्लेटफ़ॉर्म्स में सबसे एग्रेसिव AGC ट्यूनिंग है: सबसे तेज़ attack, सबसे तेज़ release, और सबसे अधिक max gain (36 dB)। उन्हें इसकी ज़रूरत है क्योंकि ये voice search (बहुत हल्की इनपुट पर सिंगल-वर्ड कैप्चर) और intercom मोड (टॉकर से अलग-अलग दूरी) को सपोर्ट करते हैं। K7, KF1, Q6, Q8 प्लेटफ़ॉर्म्स में ASR और intercom के लिए उपयुक्त इंटरमीडिएट ट्यूनिंग है। B1, B2, F8, P2 प्लेटफ़ॉर्म्स में सबसे कंज़र्वेटिव ट्यूनिंग है — इन्हें अपेक्षाकृत स्थिर 5–10 cm दूरी पर सिर्फ़ ASR हैंडल करना होता है।
4. AGC-ASR इंटरेक्शन
AGC के target level का ASR accuracy पर सीधा असर पड़ता है। L5 पर ASR इंजन −16 dBFS ± 4 dB स्पीच पर ट्रेंड किया गया है; इस रेंज से बाहर के सिग्नल पर accuracy घटती है क्योंकि acoustic model एक विशेष energy distribution मानकर चलता है। अगर AGC सिग्नल को −20 dBFS पर ले जाता है, तो ASR इंजन को अपेक्षित से धीमा सिग्नल मिलता है और word error rate 8–12 प्रतिशत बढ़ जाता है। अगर AGC सिग्नल को −12 dBFS पर ले जाता है, तो ASR इंजन को plosives पर clipping दिखती है और word error rate 5–8 प्रतिशत बढ़ जाता है।
पूरे पोर्टफ़ोलियो में, चर दूरी पर बच्चों की स्पीच पर सही ट्यून किए गए AGC बनाम AGC न होने की स्थिति में ASR accuracy का uplift लगभग 6–9 percentage points है। AGC असल में ASR इंजन को एक consistent input level देता है ताकि वह अपना काम कर सके।
शुरुआती firmware में एक आम बग यह था कि AGC target को 0 dBFS (digital full-scale) पर सेट कर दिया जाता था, यह सोचकर कि "ASR के लिए जितना तेज़ उतना अच्छा।" यह ग़लत है — इससे AGC हर चीज़ को maximum gain पर धकेलता है, हल्की इनपुट noisy हो जाती हैं, और ASR accuracy 12–18 percentage points गिर जाती है। वर्तमान firmware −16 से −18 dBFS को target करता है, जो plosives और अनपेक्षित peaks के लिए 4–6 dB headroom छोड़ता है।
5. इंटरकॉम मोड में AGC
इंटरकॉम मोड सबसे कठिन AGC परिदृश्य है क्योंकि माता-पिता की आवाज़ कमरे में कहीं से भी आ सकती है। माता-पिता 50 cm की दूरी पर बातचीत के स्तर पर बोल रहे हो सकते हैं (माइक पर −25 dBFS), या 2 m की दूरी पर ज़ोर से बोल रहे हो सकते हैं (माइक पर −15 dBFS), या 5 m की दूरी पर पुकार रहे हो सकते हैं (माइक पर −35 dBFS)। AGC को तीनों परिदृश्यों को बिना pumping, बिना clipping और माता-पिता की आवाज़ को डाउनलिंक पर अप्राकृतिक बनाए ट्रैक करना होता है।
K7, KF1, Q6, Q8 फ़र्मवेयर 30 dB अधिकतम gain रेंज और 300 ms release time वाले AGC का उपयोग करते हैं, जो 50 cm से 2 m रेंज के लिए उपयुक्त है। L5, T2, Y6 फ़र्मवेयर इसे 36 dB अधिकतम gain रेंज और 200–250 ms release time के साथ विस्तारित करते हैं, जो 50 cm से 5 m रेंज को संभालता है। B1, B2, F8, P2 फ़र्मवेयर इंटरकॉम मोड का समर्थन नहीं करता क्योंकि AGC रेंज बहुत संकीर्ण है।
थर्ड-पार्टी ODM फ़र्मवेयर में एक सामान्य इंटरकॉम बग ASR मोड के समान AGC पैरामीटर का उपयोग करना है। यह 50 cm पर काम करता है लेकिन 3 m पर बुरी तरह विफल होता है, जहाँ माता-पिता की आवाज़ −35 dBFS पर होती है और AGC की 24 dB अधिकतम gain इसे target तक नहीं उठा सकती। परिणाम एक मुश्किल से सुनाई देने वाला इंटरकॉम डाउनलिंक होता है। K7 और उससे ऊपर के रीडिंग पेन फ़र्मवेयर में ASR और इंटरकॉम के लिए अलग AGC पैरामीटर सेट का उपयोग किया जाता है, जो सक्रिय ऑडियो मोड के आधार पर स्वचालित रूप से स्विच होते हैं।
6. Pumping आर्टिफैक्ट और इसे कैसे टालें
रीडिंग पेन पर सबसे सामान्य AGC आर्टिफैक्ट है "pumping" — शांत क्षण के दौरान gain बढ़ता है, फिर अगरी तेज़ आवाज़ clip होती है, फिर gain घटता है, फिर अगले शांत क्षण में gain फिर बढ़ता है। बच्चे को अपनी आवाज़ या narration स्पंदित होती हुई सुनाई देती है।
Pumping तब होता है जब AGC release time इनपुट dynamics की तुलना में बहुत तेज़ होता है। 2.4.7 से पहले B1/B2 फ़र्मवेयर पर release 200 ms था, जो बहुत तेज़ था और उच्चारण सत्यापन के दौरान बच्चे के शब्दों के बीच रुकने पर सुनने योग्य pumping उत्पन्न करता था। 2.4.7 फ़र्मवेयर ने release को 400 ms तक बढ़ाया और एक speech-presence detector जोड़ा जो AEC reference सिग्नल सक्रिय होने पर gain को स्थिर रखता है। आर्टिफैक्ट गायब हो गया।
L5 फ़र्मवेयर पर, AGC में narration playback के दौरान एक अलग "comfort mode" है जो माइक्रोफ़ोन इनपुट की परवाह किए बिना gain को unity (0 dB) पर रखता है, जो single-talk narration के दौरान किसी भी pumping को रोकता है। जब उपयोगकर्ता बोलना शुरू करता है तो comfort mode स्वचालित रूप से अक्षम हो जाता है।
Procurement के लिए, परीक्षण सरल है: शांत कमरे में माइक्रोफ़ोन खुला रखते हुए पेन के स्पीकर से 30-सेकंड का narration सेगमेंट चलाएँ और रिकॉर्ड किए गए माइक्रोफ़ोन सिग्नल को सुनें। यदि आप रिकॉर्डिंग में narration सिग्नल स्पंदित होते हुए सुन सकते हैं, तो AGC release time बहुत तेज़ है।
7. AGC और ASR कन्फ़िडेंस स्कोर
ASR इंजन प्रत्येक recognition परिणाम के साथ एक कन्फ़िडेंस स्कोर रिपोर्ट करता है। AGC इस स्कोर को अप्रत्यक्ष रूप से प्रभावित करता है — −16 dBFS पर उचित रूप से AGC किया गया सिग्नल उच्च-कन्फ़िडेंस ASR परिणाम देता है, जबकि over-AGC या under-AGC किया गया सिग्नल कम-कन्फ़िडेंस परिणाम देता है। L5 फ़र्मवेयर पर, ASR इंजन ऑडियो पाइपलाइन को इनपुट सिग्नल स्तर रिपोर्ट करता है, और यदि ASR कन्फ़िडेंस का रनिंग एवरेज घर रहा है हुए है तो AGC अपना target समायोजित करता है।
यह feedback loop ही L5 फ़र्मवेयर को पुराने फ़र्मवेयर से "अधिक स्मार्ट" महसूस कराता है — यह समय के साथ उपयोगकर्ता के सामान्य बोलने की मात्रा के अनुसार AGC को अनुकूलित करता है। शांत कक्षा का उपयोगकर्ता उच्च target स्तर प्राप्त करता है; शोर वाले playground का उपयोगकर्ता कम target स्तर प्राप्त करता है। अनुकूलन 10–20 मिनट के उपयोग में होता है और फ़र्मवेयर के प्रति-उपयोगकर्ता प्रोफ़ाइल में स्थायी रूप से सहेजा जाता है।
Procurement के लिए, परीक्षण यह है: 12 बच्चों के पैनल को अपने सामान्य वातावरण में 30 मिनट तक पेन का उपयोग करने दें, फिर इनपुट स्तर के चतुर्थकों (quartiles) द्वारा ASR सटीकता मापें। यदि निम्नतम चतुर्थक (सबसे शांत वक्ता) शीर्ष चतुर्थक से 5 प्रतिशत अंक से अधिक पीछे है, तो AGC निम्न-स्तरीय इनपुट के अनुसार अनुकूलित नहीं हो रहा है।
8. AGC और बैटरी जीवन
AGC की बैटरी जीवन पर छोटा लेकिन वास्तविक लागत होती है। L5 पर AGC एल्गोरिदम 4 MIPS पर चलता है, जो RNNoise के 38 MIPS या beamforming के 8 MIPS की तुलना में नगण्य है, लेकिन यदि उचित रूप से गेट नहीं किया गया तो यह play-only मोड के दौरान माइक्रोफ़ोन codec को जागृत रखता है। L5 फ़र्मवेयर 4.2.0 एक "AGC standby" मोड लागू करता है जो माइक्रोफ़ोन सिग्नल 500 ms से अधिक समय तक −50 dBFS से नीचे रहने पर gain updates को अक्षम कर देता है, जो शांत passages के दौरान 5 V रेल पर लगभग 1.2 mA बचाता है।
पूरे पोर्टफ़ोलियो में, AGC standby मोड केवल L5, T2, Y6 पर लागू है। K7, KF1, Q6, Q8 AGC को लगातार चलते रखते हैं। 6-घंटे के रीडिंग सत्र में यह 4–6 मिनट का रनटाइम अंतर है — छोटा, लेकिन वास्तविक।
9. क्रय अनुबंधन के लिए AGC कैसे निर्दिष्ट करें
रीडिंग पेन AGC के लिए RFQ भाषा में एल्गोरिद्म वर्ग, लक्ष्य स्तर और समय स्थिरांक का उल्लेख होना चाहिए: "माइक्रोफ़ोन AGC ASR मोड के लिए −16 dBFS ± 2 dB और इंटरकॉम मोड के लिए −22 dBFS ± 2 dB का लक्ष्य रखेगा, जिसमें अटैक टाइम 5–15 ms, रिलीज़ टाइम 200–400 ms, लक्ष्य से ऊपर 2:1 से 4:1 का कम्प्रेशन अनुपात, और इंटरकॉम-सक्षम प्लेटफ़ॉर्म के लिए 30 dB की अधिकतम गेन तथा वॉइस-सर्च-सक्षम प्लेटफ़ॉर्म के लिए 36 dB की अधिकतम गेन होगी। AGC में AEC डबलटॉक के दौरान पम्पिंग रोकने के लिए स्पीच-प्रेज़ेंस-अवेयर रिलीज़ शामिल होगी, और सिंगल-टॉक नैरेशन प्लेबैक के दौरान कम्फ़र्ट मोड होगा जो गेन को यूनिटी पर होल्ड रखेगा।"
तीन विवरण मायने रखते हैं। पहला, target स्तर प्रति मोड निर्दिष्ट किया जाना चाहिए — ASR, इंटरकॉम, voice search और play-only में से प्रत्येक को एक अलग target की आवश्यकता होती है। दूसरा, pumping आर्टिफैक्ट परीक्षण निर्दिष्ट किया जाना चाहिए — QA प्रक्रिया में 30-सेकंड की narration चलाते हुए माइक्रोफ़ोन रिकॉर्ड करना चाहिए, और रिकॉर्ड किए गए सिग्नल में narration सेगमेंट के दौरान 3 dB peak-to-peak से अधिक gain pumping नहीं होनी चाहिए। तीसरा, निम्न-इनपुट ASR सटीकता निर्दिष्ट की होनी चाहिए — −35 dBFS इनपुट पर speech की ASR सटीकता, −15 dBFS इनपुट पर speech की सटीकता के 5 प्रतिशत अंकों के भीतर होनी चाहिए।
खरीदार सुझाव: AGC का परीक्षण पेन के माध्यम से 10 मिनट की कक्षा ऑडियो रिकॉर्ड करके और रिकॉर्ड किए गए सिग्नल की loudness रेंज मापकर करें। सु-ट्यून किया गया AGC 12 dB से कम loudness रेंज वाली रिकॉर्डिंग उत्पन्न करता है; खराब ट्यून किया गया AGC 20 dB से अधिक loudness रेंज वाली रिकॉर्डिंग उत्पन्न करता है।
9b. उपयोग के मामलों में AGC आउटपुट स्तर वितरण
ऑडियो के डाउनस्ट्रीम उपभोक्ता के भिन्न होने के कारण AGC target स्तर उपयोग के मामले के अनुसार भिन्न होता है। ASR सर्वोत्तम acoustic-model मिलान के लिए −16 dBFS चाहता है; इंटरकॉम डाउनलिंक codec के लिए headroom छोड़ने हेतु −22 dBFS चाहता है; voice search लघु-उच्चारण विश्वसनीयता के लिए −16 dBFS चाहता है। नीचे दिया गया चार्ट दिखाता है कि समान AGC प्रत्येक परिदृश्य को कैसे संभालता है।
10. निर्णय मैट्रिक्स और सिफ़ारिशें
2026 में शुरू होने वाले नए रीडिंग पेन प्रोग्राम के लिए सिफ़ारिश है L5, T2, Y6 पर स्पीच-प्रेज़ेंस-अवेयर रिलीज़ के साथ डुअल-टार्गेट AGC(ASR लक्ष्य −16 dBFS, इंटरकॉम लक्ष्य −22 dBFS, नैरेशन के दौरान कम्फ़र्ट मोड), और K7, KF1, Q6, Q8 पर सिंगल-टार्गेट AGC (ASR target −18 dBFS, इंटरकॉम target −22 dBFS)। B1, B2, F8, P2 legacy प्लेटफ़ॉर्म के लिए, −14 से −16 dBFS पर मौजूदा single-target AGC केवल-ASR प्रोग्राम के लिए स्वीकार्य है।
AGC विनिर्देश लिखने वाले procurement अधिकारी के लिए, अनुबंध को बंद करने वाली पंक्ति है: "माइक्रोफ़ोन AGC ASR मोड के लिए −16 dBFS ± 2 dB को target करेगा, जिसमें attack ≤ 15 ms, release 200–400 ms, ratio 2:1–4:1, इंटरकॉम प्लेटफ़ॉर्म के लिए max gain ≥ 30 dB होगा; AGC में AEC doubletalk के दौरान pumping रोकने के लिए speech-presence-aware release शामिल होगा; QA gain-pumping परीक्षण 30-सेकंड narration playback के दौरान रिकॉर्ड किए गए माइक्रोफ़ोन सिग्नल पर ≤ 3 dB peak-to-peak विचलण दिखाएगा।"