Elevate your projects with text-to-speech conversion using Python! Dive into speech synthesis and learn how to transform written text into natural-sounding speech. Explore various techniques and tools, and harness the power of TTS technology. Enhance accessibility, create interactive voice applications, and unlock new possibilities with this comprehensive tutorial. #TextToSpeech #Python #SpeechSynthesis #TTS #Accessibility #VoiceApplications
For this project tutorial we will install the Google text to speech API and the pyttsx3 API and convert a text sentence into and audio file.
You can watch the step by step explanation video tutorial down below
Project Information
The objective of the project is to convert text to speech in real time and convert text to audio file. It uses google text to speech API to convert the text to audio. It also uses pyttsx3 (offline module) that converts text to audio with various customizations.
Google Text to Speech API
We will proceed to install the gTTS module
# install the module
!pip install gTTS
Collecting gTTS Downloading gTTS-2.2.3-py3-none-any.whl (25 kB) Requirement already satisfied: six in c:\programdata\anaconda3\lib\site-packages (from gTTS) (1.15.0) Requirement already satisfied: requests in c:\programdata\anaconda3\lib\site-packages (from gTTS) (2.24.0) Requirement already satisfied: click in c:\programdata\anaconda3\lib\site-packages (from gTTS) (7.1.2) Requirement already satisfied: idna<3,>=2.5 in c:\programdata\anaconda3\lib\site-packages (from requests->gTTS) (2.10) Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in c:\programdata\anaconda3\lib\site-packages (from requests->gTTS) (1.25.11) Requirement already satisfied: certifi>=2017.4.17 in c:\programdata\anaconda3\lib\site-packages (from requests->gTTS) (2020.6.20) Requirement already satisfied: chardet<4,>=3.0.2 in c:\programdata\anaconda3\lib\site-packages (from requests->gTTS) (3.0.4) Installing collected packages: gTTS Successfully installed gTTS-2.2.3
from gtts import gTTS
import os
# input
text = 'Welcome to Hackers Realm. It contains tutorial videos on technology'
# convert text to speech
text_to_speech = gTTS(text=text, lang='en', slow=False)
# save the audio file
text_to_speech.save('test.mp3')
# play the audio
os.system('test.mp3')
0
os - used to handle files using system commands
lang='en' - Language conf. to English, you may change the language by preference
slow=False - Parameter to change audio speed
Pyttsx - Offline
We will install the pyttsx3 module
# install the module
!pip install pyttsx3
Collecting pyttsx3 Downloading pyttsx3-2.90-py3-none-any.whl (39 kB) Requirement already satisfied: comtypes in c:\programdata\anaconda3\lib\site-packages (from pyttsx3) (1.1.7) Collecting pypiwin32 Downloading pypiwin32-223-py3-none-any.whl (1.7 kB) Requirement already satisfied: pywin32 in c:\programdata\anaconda3\lib\site-packages (from pyttsx3) (227) Installing collected packages: pypiwin32, pyttsx3 Successfully installed pypiwin32-223 pyttsx3-2.90
import pyttsx3
# input
text = 'Welcome to Hackers Realm. It contains tutorial videos on technology'
# initialize the module
text_to_speech = pyttsx3.init()
# adjust the speed
text_to_speech.setProperty('rate', 150)
# change the voice
voices = text_to_speech.getProperty('voices')
text_to_speech.setProperty('voice', voices[1].id) # 0 for male and 1 for female
# convert text to speech
text_to_speech.say(text)
# save the audio file
text_to_speech.save_to_file(text, 'test.mp3')
# listen to audio
text_to_speech.runAndWait()
pyttsx3.init() - Initialization of the module
setProperty('rate', 150) - Set speed of audio
setProperty('voice', voices[1].id) - Change voice type to male or female
save_to_file() - stores the audio file
runAndWait() - stream the converted audio for real time listening
Check the documentation to see more customization available for the audio
Final Thoughts
Two best modules to convert any text to speech, you may use other similar modules by your preference.
The pyttsx3 module has many customization tools for the audio.
Very useful tool for educational purposes for learning or fortifying a specific language.
In this project tutorial, we have explored the Convert Text to Speech process using the Google Text to Speech module and the pyttsx3 module. A basic text was converted into an audio file and customization of the audio is also done with the modules.
Get the project notebook from here
Thanks for reading the article!!!
Check out more project videos from the YouTube channel Hackers Realm
Comments