Text to Speech
हम क्या बना रहे हैं
Text-to-speech program लिखे text को बोले audio में बदलता है — तो आपका program सच में बोल सकता है। Python में दो लोकप्रिय libraries हैं: pyttsx3 (offline चलता है, speakers से बोलता है) और gTTS (Google online इस्तेमाल करता है, audio file save करता है)। दोनों इस्तेमाल करने में आसान हैं।
pyttsx3 — offline speech
इसे एक बार install कीजिए, फिर अपने program को बोलवाइए:
pip install pyttsx3
import pyttsx3
engine = pyttsx3.init()
engine.say("Hello, welcome to CodingEasily")
engine.runAndWait()
engine.say() text को queue करता है, और engine.runAndWait() उसे असल में बोलता है। internet नहीं चाहिए — यह तुरंत speakers से बजता है।
Voice और speed
engine = pyttsx3.init()
engine.setProperty("rate", 150) # बोलने की speed
voices = engine.getProperty("voices")
engine.setProperty("voice", voices[1].id) # voice switch
engine.say("This is a slower, different voice")
engine.runAndWait()
rate speed control करता है (कम यानी धीमा)। getProperty("voices") उपलब्ध voices list करता है, और आप एक को उसकी id से चुनते हैं। इससे आप speech की आवाज़ customize करते हैं।
gTTS — online, file में save
gTTS ज़्यादा natural voice को Google की service इस्तेमाल करता है और MP3 save करता है।
pip install gTTS
from gtts import gTTS
tts = gTTS("Hello from CodingEasily")
tts.save("output.mp3")
print("Saved output.mp3")
gTTS(text) speech बनाता है और save() उसे MP3 file में लिखता है जिसे आप play या share कर सकते हैं। इसे internet चाहिए क्योंकि यह Google की online service call करता है।
कौन-सा इस्तेमाल करें
| बात | pyttsx3 | gTTS |
|---|---|---|
| Internet | नहीं चाहिए | चाहिए |
| तुरंत बोलता है | हाँ | file save करता है |
| Voice quality | Robotic | ज़्यादा natural |
| Voice/speed बदलना | हाँ | सीमित |
Offline, तुरंत speech को pyttsx3; natural voice या रखने को audio file चाहिए तब gTTS इस्तेमाल कीजिए।
आम गलतियाँ
runAndWait()भूलना। pyttsx3 में, इसके बिना program बोलना ख़त्म होने से पहले बंद हो सकता है।- gTTS से सीधे बोलने की उम्मीद। gTTS file save करता है — फिर आप उसे media player से play करते हैं।
- gTTS को internet नहीं। यह offline fail होता है; इसके बजाय pyttsx3 इस्तेमाल कीजिए।
- गलत voice index। voices की संख्या system से बदलती है — पहले list जाँचिए।
सारांश
- Text-to-speech text को बोले audio में बदलता है।
pyttsx3offline चलता है और तुरंत बोलता है।- pyttsx3 में voice और speed
setPropertyसे बदलिए। gTTSGoogle online इस्तेमाल करता है और MP3 file save करता है।- Offline speech को pyttsx3, natural voice या file को gTTS चुनिए।
आगे, एक और मज़ेदार project बनाइए जैसे chatbot, या live data लाइए weather API से।
अक्सर पूछे जाने वाले प्रश्न (FAQ)
Python को text ज़ोर से बोलवाऊँ कैसे?
pyttsx3 offline चलता है और सीधे speakers से बोलता है। gTTS Google online इस्तेमाल करता है और MP3 file save करता है। दोनों text की string को बोले audio में बदलते हैं।pyttsx3 और gTTS में क्या अंतर है?
pyttsx3 offline चलता है (internet नहीं), तुरंत बोलता है, और voice व speed बदलने देता है। gTTS को internet चाहिए, ज़्यादा natural लगता है, और audio file save करता है जिसे आप play या share कर सकते हैं।pyttsx3 में voice या speed कैसे बदलूँ?
engine.setProperty("rate", 150) और voices switch करने को engine.setProperty("voice", voices[1].id) इस्तेमाल कीजिए। उपलब्ध voices engine.getProperty("voices") से मिलती हैं।Speech को audio file के रूप में कैसे save करूँ?
tts.save("output.mp3") call कीजिए। pyttsx3 के साथ, engine.save_to_file(text, "out.mp3") फिर engine.runAndWait() इस्तेमाल कीजिए। यह सिर्फ़ बोलने के बजाय audio file बनाता है।