gTTS क्या है?
gTTS एक ओपन-सोर्स Python लाइब्रेरी और कमांड-लाइन टूल है जो Google Translate के टेक्स्ट-टू-स्पीच एंडपॉइंट का उपयोग करके टेक्स्ट को बोले गए MP3 ऑडियो में बदलता है। आप आउटपुट को फाइल, फाइल-जैसी ऑब्जेक्ट या डायरेक्ट stdout पर लिख सकते हैं। इसे Pierre Nicolas Durette ने बनाया है, MIT लाइसेंस के तहत उपलब्ध है, और यह PyPI पर सबसे ज़्यादा डाउनलोड किए जाने वाले TTS पैकेजों में से एक है, इसके लगभग 1,75,000 साप्ताहिक डाउनलोड हैं। अगर कभी आपने सिर्फ तीन Python लाइनों में टेक्स्ट को MP3 में बदलना चाहा हो, तो gTTS शायद आपकी पहली पसंद रही होगी।
यह ध्यान देना ज़रूरी है कि gTTS, Google Cloud Text-to-Speech नहीं है। यह उसी अंडॉक्यूमेंटेड बैकएंड से बात करता है, जिस पर Google Translate का "Listen" बटन चलता है। यही फर्क gTTS की खूबियां, कमियां और कब आपको दूसरा विकल्प चुनना चाहिए, सब तय करता है।

gTTS कब इस्तेमाल करें?
gTTS का इस्तेमाल करें जब फ्री, तेज़ प्रोटोटाइपिंग चाहिए; टेक्स्ट से MP3 बनाने के लिए वन-लाइनर; मल्टीलिंग्वल डेमो; हॉबी प्रोजेक्ट, क्लासरूम उदाहरण या एक्सेसिबिलिटी स्क्रिप्ट चाहिए, जो Google Docs एक्सपोर्ट को पढ़ सके। प्रॉडक्शन रिलायबिलिटी, डॉक्यूमेंटेड SLA, वॉइस क्लोनिंग, SSML कंट्रोल, न्यूरल या एक्सप्रेसिव वॉइस, स्ट्रीमिंग ऑडियो या स्पष्ट कमर्शियल लाइसेंसिंग चाहिए तो gTTS न चुनें।
gTTS कैसे काम करता है?
gTTS लोकली स्पीच सिंथेसाइज़ नहीं करता। ये Google Translate के "Listen" फीचर वाले बैकएंड को रिक्वेस्ट भेजता है, वापस आया MP3 डाउनलोड करता है और आपको देता है। यानी आपको इंटरनेट चाहिए, कोई ऑफलाइन मोड नहीं है, ऑडियो Google के सर्वर पर बनता है, आपके सिस्टम पर नहीं। एंडपॉइंट ऑफिशियल नहीं है। प्रोजेक्ट Google या Google Cloud से लिंक नहीं है, ऊपर से कोई भी बदलाव कभी भी इसे तोड़ सकता है।
इंस्टॉलेशन
bash
pip install gTTS
gTTS को Python 3.7 या उससे ऊपर चाहिए और ये macOS, Windows, Linux पर चलता है। मौजूदा PyPI रिलीज़ है 2.5.4 (नवंबर 2024)। Debian-बेस्ड सिस्टम, जैसे Raspberry Pi OS, पर ध्यान दें—pip पैकेज है gTTS, जबकि apt पैकेज है python3-gtts। अगर pip install नए OS पर externally-managed-environment एरर दे, तो वर्चुअल एनवायरनमेंट में इंस्टॉल करें।
मूल इस्तेमाल
न्यूनतम उदाहरण:
python
from gtts import gTTS
tts = gTTS("Hello, world.")tts.save("hello.mp3")
कमांड लाइन से:
bash
gtts-cli "hello" --output hello.mp3
भाषा और एक्सेंट चुनें
python
tts = gTTS("Bonjour le monde", lang="fr")tts.save("bonjour.mp3")
gTTS में क्षेत्रीय सब-टैग tld पैरामीटर से मिलते हैं — जैसे
tld="co.uk" ब्रिटिश इंग्लिश Accent के लिए या tld="ca" कनाडाई फ्रेंच Accent के लिए — ये रिक्वेस्ट को अलग-अलग Google Translate डोमेन के जरिए भेजता है।
स्लो मोड
python
tts = gTTS("Read this slowly.", lang="en", slow=True)tts.save("slow.mp3")
यही एकमात्र स्पीच कंट्रोल है। कोई pitch पैरामीटर नहीं, slow=True के अलावा रेट स्लाइडर नहीं, हर भाषा में केवल एक वॉइस, SSML नहीं।
डिस्क की जगह बफ़र पर स्ट्रीम करें
python
from io import BytesIOfrom gtts import gTTS
buf = BytesIO()gTTS("Stream me").write_to_fp(buf)buf.seek(0)# अब buf को pydub, ffmpeg, web रिस्पॉन्स आदि को दें।
प्री-प्रोसेसिंग और लंबा टेक्स्ट
gTTS की खासियत इसका टोकनाइज़र है। ये लंबा इनपुट छोटे हिस्सों में बांटता है (हर रिक्वेस्ट में करीब 100 कैरेक्टर लिमिट है), स्मूद उच्चारण बनाए रखता है और अब्रिविएशन, दशमलव, दूसरे चिन्हों को सही संभालता है। बार-बार उच्चारण की गड़बड़ ठीक करने के लिए आप कस्टम प्री-प्रोसेसर भी जोड़ सकते हैं — मसलन, प्रोडक्ट नाम या शॉर्ट फॉर्म का फोनेटिक बदलना।
gTTS के फायदे क्या हैं?
gTTS (Google Text-to-Speech) डिवेलपर्स में लोकप्रिय है क्योंकि ये हल्का, लागू करने में आसान और Python के साथ अच्छी तरह घुल-मिल जाता है। इससे MP3 ऑडियो फाइलें बन सकती हैं और आउटपुट सीधे फाइल, फाइल-जैसी ऑब्जेक्ट या stdout पर सेव कर सकते हैं, जिससे ये ऑटोमेशन और स्क्रिप्टिंग में काफ़ी काम का है। यह तकरीबन 60 भाषाओं और कई डायलेक्ट विकल्पों को भाषा और डोमेन सेटिंग्स के ज़रिए सपोर्ट करता है। कमांड-लाइन इंटरफेस (gtts-cli) shell स्क्रिप्ट के साथ आसानी से चल जाता है। टोकनाइज़र और प्री-प्रोसेसर को कस्टमाइज़ किया जा सकता है ताकि अब्रिविएशन, नंबर और टेक्स्ट सब्स्टिट्यूशन अच्छे से संभाले जा सकें। इसकी सिंपल API से Jupyter notebooks, Flask ऐप, Discord bot और दूसरे प्रोजेक्ट्स में वॉयस जोड़ना आसान हो जाता है।
gTTS की कमियां क्या हैं?
सरलता के बावजूद, gTTS की तुलना में आधुनिक AI वॉयस प्लेटफॉर्म्स ज़्यादा सक्षम हैं। इसकी आवाज़ें मानक Google Translate स्पीच आउटपुट पर आधारित हैं, इसलिए वे कामचलाऊ हैं, मगर उनमें उतनी नेचुरल इंटोनेशन, भाव और रियलिज़्म नहीं आता जितना neural टेक्स्ट-टू-स्पीच में होता है। यूज़र भाषा के अंदर कई आवाज़ें चुन नहीं सकते, न ही SSML, पिच एडजस्टमेंट या सटीक स्पीकिंग रेट कंट्रोल कर सकते हैं। पूरी MP3 डाउनलोड करनी पड़ती है, रियल-टाइम स्ट्रीमिंग नहीं है, जिससे इंटरऐक्टिव ऐप्स में लेटेंसी बढ़ सकती है। हर रिक्वेस्ट इंटरनेट के जरिए जाती है, इसलिए gTTS ऑफलाइन नहीं चलता और लो-लेटेंसी, हाई-रिलायबल यूज़ के लिए उतना मुफ़ीद नहीं।
gTTS की सीमाएं डिवेलपर्स के लिए क्या हैं?
1. अंजानी लिमिट वाला एंडपॉइंट
"hello world" से आगे बढ़ते ही यह सबसे बड़ी दिक्कत बन जाता है। gTTS किसी कोटा की जानकारी नहीं देता क्योंकि ऊपर की सर्विस भी नहीं देती। व्यवहार में, एक IP आम तौर पर हर घंटे कई हजार कैरेक्टर भेज सकती है, उसके बाद Google HTTP 429 दे देता है, और सीमा ट्रैफिक पर निर्भर रहती है। अगर आप एक सर्वर से कई यूज़र्स के लिए ऑडियो बना रहे हैं तो इन सीमाओं से टकराना लगभग तय है, कोई SLA भी नहीं है।
2. एंडपॉइंट कभी भी बदल सकता है
क्योंकि gTTS वर्शन वाले पब्लिक API के बजाय एक इंटरनल Google Translate रूट को टारगेट करता है, Google कभी भी रिक्वेस्ट के सिग्नेचर या रिस्पॉन्स स्ट्रक्चर बदल सकता है और gTTS अचानक बंद हो सकता है। मेंटेनर फिक्स डालता है, आप
pip install -U gTTS चलाते हैं, और काम फिर से शुरू हो जाता है। हॉबी स्क्रिप्ट के लिए तो ठीक है, मगर प्रॉडक्शन में रात के 2 बजे के लिए नहीं।
3. मेंटेनेंस की रफ्तार
प्रोजेक्ट अब भी रिलीज़ करता है (कम-से-कम पिछले 12 महीनों में एक बार), मगर issue ट्रायज स्लो है और विकास लगभग एक ही व्यक्ति पर टिका है। कुछ हेल्थ ट्रैकर्स इसे "inactive" मानते हैं। मुफ़्त MIT लाइब्रेरी के लिए ये आम बात है, मगर पेड प्रोडक्ट में इसे ज़रूर तौलें।
4. कमर्शियल और TOS अस्पष्टता
gTTS, Google Cloud TTS के बजाय Google Translate के फ्रंटएंड से काम करता है, इसलिए ऑडियो का कमर्शियल इस्तेमाल साफ़-साफ़ कहीं परिभाषित नहीं है। लाइब्रेरी MIT-licensed है; लेकिन ऑडियो गूगल की सर्विस की शर्तों के तहत आता है, जो ऑफिशली TTS API नहीं है। अगर आपकी लीगल टीम को क्लीयर जवाब चाहिए, gTTS से नहीं मिलने वाला।
5. संवेदनशील डेटा आपके सिस्टम से बाहर जाता है
हर स्ट्रिंग गूगल के सर्वर पर जाती है। यदि आप आंतरिक दस्तावेज़, ग्राहक PII, या Google Docs आदि से खींचे गए कंटेंट की वॉयस बना रहे हैं, तो डेटा-गवर्नेंस का सवाल ज़रूर उठाएं।
gTTS और Google Cloud Text-to-Speech में क्या फर्क है?
gTTS और Google Cloud Text-to-Speech को अक्सर एक जैसा समझ लिया जाता है, जबकि वे अलग चीज़ें हैं। इनके मुख्य फर्क नीचे दिए हैं:
अगर प्रॉडक्शन में Google Voice चाहिए, तो आपको लगभग तय तौर पर Google Cloud TTS ही यूज़ करना चाहिए, gTTS नहीं।
आपको प्रोफेशनल TTS API पर कब जाना चाहिए?
gTTS से प्रोफेशनल टेक्स्ट-टू-स्पीच API पर कब शिफ्ट करना चाहिए, यह आपके प्रोजेक्ट के लिए ऑडियो क्वालिटी, भरोसे और कस्टमाइजेशन की अहमियत पर निर्भर करता है। gTTS प्रोटोटाइप, पोर्टफोलियो प्रोजेक्ट, निजी एक्सेसिबिलिटी टूल, शैक्षणिक डेमो व हल्के प्रयोग के लिए अच्छा है क्योंकि ये सरल, मुफ्त और अपनाने में आसान है। लेकिन अगर आप प्रॉडक्ट लॉन्च कर रहे हैं, स्पीच क्वालिटी अहम है, या आपको service-level agreement चाहिए, तो प्रोफेशनल सॉल्यूशन ज़रूरी हो जाता है। जब आपको खास फीचर जैसे कई वॉयस विकल्प, वॉयस क्लोनिंग, SSML सपोर्ट, स्ट्रीमिंग ऑडियो, कंट्रोल्ड पेसिंग/उच्चारण या कानूनी दृष्टि से साफ कॉमर्शियल लाइसेंसिंग चाहिए तो भी अपग्रेड ज़रूरी है। एक्सपेरिमेंट से प्रोडक्शन पर आते-आते ये फीचर अक्सर ज़रूरी हो जाते हैं।
gTTS चुनें या Speechify API?
Speechify का टेक्स्ट-टू-स्पीच API एक आधिकारिक, पेड सेवा है जिसमें न्यूरल वॉयस, प्रति भाषा कई वॉयस विकल्प, SSML सपोर्ट और कमर्शियल लाइसेंसिंग कॉन्ट्रैक्ट में शामिल है, यह किसी अंडॉक्यूमेंटेड एंडपॉइंट पर आधारित नहीं। यदि gTTS की लिमिट, वॉयस क्वालिटी या TOS अस्पष्टता आपको रोक रही हो, तो इस पर माइग्रेट करना बेहतर रहेगा।
FAQ
क्या gTTS फ्री है?
हां, gTTS एक मुफ़्त, MIT-licensed Python लाइब्रेरी है, लेकिन कमर्शियल, लाइसेंसशुदा ऑडियो के लिए Speechify API जैसी पेड सर्विस चाहिए।
क्या gTTS ऑफलाइन चलता है?
नहीं, gTTS को इंटरनेट चाहिए क्योंकि ये गूगल सर्वर से बात करता है। Speechify API भी क्लाउड सेवा है और वही मॉडल फॉलो करती है।
क्या मैं gTTS का कॉमर्शियल प्रोडक्ट में उपयोग कर सकता हूँ?
चूंकि gTTS एक अंडॉक्यूमेंटेड Google एंडपॉइंट पर निर्भर है, इसके आउटपुट का लाइसेंस अस्पष्ट है, जबकि Speechify API स्पष्ट कमर्शियल लाइसेंस देती है।
gTTS में वॉयस कैसे बदलें?
आप नहीं बदल सकते। gTTS हर भाषा में एक ही वॉयस देता है, जबकि Speechify API कई neural वॉयस विकल्प देती है।
क्या gTTS में SSML सपोर्ट है?
नहीं, gTTS में SSML सपोर्ट, pitch या fine rate कंट्रोल नहीं है, लेकिन Speechify API में SSML सपोर्ट मिलता है।
gTTS HTTP 429 एरर क्यों देता है?
आपने Google Translate की अज्ञात रेट लिमिट पार कर ली है, इसी वजह से डिवेलपर्स SLA वाली सेवा, जैसे Speechify API, की तरफ़ जाते हैं।
क्या gTTS और Google Cloud TTS एक ही हैं?
नहीं, gTTS अनऑफिशियल Google Translate एंडपॉइंट यूज़ करता है, Google Cloud TTS एक अलग पेड प्रोडक्ट है, और Speechify API भी neural वॉयस वाला एक पेड विकल्प है।
प्रोडक्शन के लिए बेस्ट Python TTS लाइब्रेरी कौन सी है?
gTTS प्रोटोटाइप के लिए ठीक है पर प्रोडक्शन के लिए नहीं; प्रोडक्शन में डिवेलपर्स आम तौर पर Speechify API जैसे पेड API चुनते हैं।
क्या gTTS आवाज़ क्लोन कर सकता है?
नहीं, वॉयस क्लोनिंग gTTS में सपोर्ट नहीं है, मगर Speechify API में उपलब्ध है।
gTTS से ऑडियो स्ट्रीम कैसे करें?
gTTS रियल-टाइम स्ट्रीमिंग सपोर्ट नहीं करता, यह पूरी MP3 फाइल देता है। लो-लेटेंसी स्ट्रीमिंग के लिए Speechify API का इस्तेमाल करें।

