Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Text to speech GUI convertor using Tkinter in Python

  • Difficulty Level : Medium
  • Last Updated : 23 Dec, 2021

Prerequisite: Introduction to Tkinter

Tkinter is the standard GUI library for Python. Python when combined with tkinter provides a fast and easy way to create GUI applications.By this library we can make a compelling choice for building GUI applications in Python, especially for applications where a modern sheen is unnecessary, and the top priority is to build something that’s functional and cross-platform quickly.

To create a tkinter application:

  1. Importing the module – tkinter
  2. Create the main window (container)
  3. Add any number of widgets to the main window
  4. Apply the event Trigger on the widgets.

Now, Let’s create a GUI based Text to speech convertor application which convert text into speech.

There are lots of library in python one of them is gTTS (Google Text-to-Speech), a Python library and CLI tool to interface with Google Translate’s text-to-speech API.  

To install gTTS simply go to your terminal and type:

pip install gTTS

Below is the implementation :


# importing required module
from tkinter import *
from gtts import gTTS
# this module helps to
# play the converted audio 
import os
# create tkinter window
root = Tk()
# styling the frame which helps to 
# make our background stylish
frame1 = Frame(root,
               bg = "lightPink",
               height = "150")
# place the widget in gui window
frame1.pack(fill = X)
frame2 = Frame(root,
               bg = "lightgreen",
               height = "750")
# styling the label which show the text 
# in our tkinter window
label = Label(frame1, text = "Text to Speech",
              font = "bold, 30",
              bg = "lightpink") = 180, y = 70)
# entry is used to enter the text 
entry = Entry(frame2, width = 45,
              bd = 4, font = 14) = 130, y = 52)
entry.insert(0, "")
# define a function which can
# get text and convert into audio
def play():
    # Language in which you want to convert 
    language = "en"
   # Passing the text  and language, 
   # here we have  slow=False. Which tells 
   # the module that the converted audio should 
   # have a high speed 
    myobj = gTTS(text = entry.get(),
                lang = language,
                slow = False)
    # give the name as you want to 
    # save the audio"convert.wav")
# create a button which holds
# our play function using command = play
btn = Button(frame2, text = "SUBMIT",
             width = "15", pady = 10,
             font = "bold, 15",
             command = play, bg='yellow') = 250,
          y = 130)
# give a title 
# we can not change the size
# if you want you can change
# start the gui


 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning - Basic Level Course

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!