Skip to content

Commit

Permalink
Initialize files
Browse files Browse the repository at this point in the history
  • Loading branch information
gunarakulangunaretnam committed May 21, 2021
0 parents commit 86488fb
Show file tree
Hide file tree
Showing 14 changed files with 446 additions and 0 deletions.
14 changes: 14 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Python Real Time Language Translation Bot

This repository contains some python scripts which can translate languages with audio processing. These scripts are written in python with some modules.

###### How does it work

1. Convert audio speeches into texts with [speech-recognition library](https://pypi.org/project/SpeechRecognition/).
2. Translate the text into another language with [googletrans library](https://pypi.org/project/googletrans/)
3. Convert the translated text into voice [gtts library](https://pypi.org/project/gTTS/)
4. Play the voice as sound [playsound library](https://pypi.org/project/playsound/)

###### System Architecture

![System Architecture](/system-architeture.png)
36 changes: 36 additions & 0 deletions chinese-to-english/run.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from gtts import gTTS
import speech_recognition as sr
from googletrans import Translator
import playsound
import os

translator = Translator()

def translator_fun(text):
return translator.translate(text, src='zh-CN', dest='en')

def text_to_voice(text_data):
myobj = gTTS(text=text_data, lang='en', slow=False)
myobj.save("cache_file.mp3")
playsound.playsound("cache_file.mp3")
os.remove("cache_file.mp3")

while True:
rec = sr.Recognizer()

with sr.Microphone() as source:
print("Listening...")
rec.pause_threshold = 1
audio = rec.listen(source, phrase_time_limit=10)
try:
print("Processing...")
spoken_text = rec.recognize_google(audio, language='zh-CN')

print("Translating...")
tamil_version = translator_fun(spoken_text)

print("Text to Speech...")
text_to_voice(tamil_version.text)

except Exception as e:
print(e)
36 changes: 36 additions & 0 deletions chinese-to-sinhala/run.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from gtts import gTTS
import speech_recognition as sr
from googletrans import Translator
import playsound
import os

translator = Translator()

def translator_fun(text):
return translator.translate(text, src='zh-CN', dest='si')

def text_to_voice(text_data):
myobj = gTTS(text=text_data, lang='si', slow=False)
myobj.save("cache_file.mp3")
playsound.playsound("cache_file.mp3")
os.remove("cache_file.mp3")

while True:
rec = sr.Recognizer()

with sr.Microphone() as source:
print("Listening...")
rec.pause_threshold = 1
audio = rec.listen(source, phrase_time_limit=10)
try:
print("Processing...")
spoken_text = rec.recognize_google(audio, language='zh-CN')

print("Translating...")
tamil_version = translator_fun(spoken_text)

print("Text to Speech...")
text_to_voice(tamil_version.text)

except Exception as e:
print(e)
36 changes: 36 additions & 0 deletions chinese-to-tamil/run.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from gtts import gTTS
import speech_recognition as sr
from googletrans import Translator
import playsound
import os

translator = Translator()

def translator_fun(text):
return translator.translate(text, src='zh-CN', dest='ta')

def text_to_voice(text_data):
myobj = gTTS(text=text_data, lang='ta', slow=False)
myobj.save("cache_file.mp3")
playsound.playsound("cache_file.mp3")
os.remove("cache_file.mp3")

while True:
rec = sr.Recognizer()

with sr.Microphone() as source:
print("Listening...")
rec.pause_threshold = 1
audio = rec.listen(source, phrase_time_limit=10)
try:
print("Processing...")
spoken_text = rec.recognize_google(audio, language='zh-CN')

print("Translating...")
tamil_version = translator_fun(spoken_text)

print("Text to Speech...")
text_to_voice(tamil_version.text)

except Exception as e:
print(e)
36 changes: 36 additions & 0 deletions english-to-chinese/run.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from gtts import gTTS
import speech_recognition as sr
from googletrans import Translator
import playsound
import os

translator = Translator()

def translator_fun(text):
return translator.translate(text, src='en', dest='zh-CN')

def text_to_voice(text_data):
myobj = gTTS(text=text_data, lang='zh-CN', slow=False)
myobj.save("cache_file.mp3")
playsound.playsound("cache_file.mp3")
os.remove("cache_file.mp3")

while True:
rec = sr.Recognizer()

with sr.Microphone() as source:
print("Listening...")
rec.pause_threshold = 1
audio = rec.listen(source, phrase_time_limit=10)
try:
print("Processing...")
spoken_text = rec.recognize_google(audio, language='en')

print("Translating...")
tamil_version = translator_fun(spoken_text)

print("Text to Speech...")
text_to_voice(tamil_version.text)

except Exception as e:
print(e)
36 changes: 36 additions & 0 deletions english-to-sinhala/run.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from gtts import gTTS
import speech_recognition as sr
from googletrans import Translator
import playsound
import os

translator = Translator()

def translator_fun(text):
return translator.translate(text, src='en', dest='si')

def text_to_voice(text_data):
myobj = gTTS(text=text_data, lang='si', slow=False)
myobj.save("cache_file.mp3")
playsound.playsound("cache_file.mp3")
os.remove("cache_file.mp3")

while True:
rec = sr.Recognizer()

with sr.Microphone() as source:
print("Listening...")
rec.pause_threshold = 1
audio = rec.listen(source, phrase_time_limit=10)
try:
print("Processing...")
spoken_text = rec.recognize_google(audio, language='en')

print("Translating...")
tamil_version = translator_fun(spoken_text)

print("Text to Speech...")
text_to_voice(tamil_version.text)

except Exception as e:
print(e)
36 changes: 36 additions & 0 deletions english-to-tamil/run.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from gtts import gTTS
import speech_recognition as sr
from googletrans import Translator
import playsound
import os

translator = Translator()

def translator_fun(text):
return translator.translate(text, src='en', dest='ta')

def text_to_voice(text_data):
myobj = gTTS(text=text_data, lang='ta', slow=False)
myobj.save("cache_file.mp3")
playsound.playsound("cache_file.mp3")
os.remove("cache_file.mp3")

while True:
rec = sr.Recognizer()

with sr.Microphone() as source:
print("Listening...")
rec.pause_threshold = 1
audio = rec.listen(source, phrase_time_limit=10)
try:
print("Processing...")
spoken_text = rec.recognize_google(audio, language='en')

print("Translating...")
tamil_version = translator_fun(spoken_text)

print("Text to Speech...")
text_to_voice(tamil_version.text)

except Exception as e:
print(e)
36 changes: 36 additions & 0 deletions sinhala-to-chinese/run.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from gtts import gTTS
import speech_recognition as sr
from googletrans import Translator
import playsound
import os

translator = Translator()

def translator_fun(text):
return translator.translate(text, src='si', dest='zh-CN')

def text_to_voice(text_data):
myobj = gTTS(text=text_data, lang='zh-CN', slow=False)
myobj.save("cache_file.mp3")
playsound.playsound("cache_file.mp3")
os.remove("cache_file.mp3")

while True:
rec = sr.Recognizer()

with sr.Microphone() as source:
print("Listening...")
rec.pause_threshold = 1
audio = rec.listen(source, phrase_time_limit=10)
try:
print("Processing...")
spoken_text = rec.recognize_google(audio, language='si')

print("Translating...")
tamil_version = translator_fun(spoken_text)

print("Text to Speech...")
text_to_voice(tamil_version.text)

except Exception as e:
print(e)
36 changes: 36 additions & 0 deletions sinhala-to-english/run.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from gtts import gTTS
import speech_recognition as sr
from googletrans import Translator
import playsound
import os

translator = Translator()

def translator_fun(text):
return translator.translate(text, src='si', dest='en')

def text_to_voice(text_data):
myobj = gTTS(text=text_data, lang='en', slow=False)
myobj.save("cache_file.mp3")
playsound.playsound("cache_file.mp3")
os.remove("cache_file.mp3")

while True:
rec = sr.Recognizer()

with sr.Microphone() as source:
print("Listening...")
rec.pause_threshold = 1
audio = rec.listen(source, phrase_time_limit=10)
try:
print("Processing...")
spoken_text = rec.recognize_google(audio, language='si')

print("Translating...")
tamil_version = translator_fun(spoken_text)

print("Text to Speech...")
text_to_voice(tamil_version.text)

except Exception as e:
print(e)
36 changes: 36 additions & 0 deletions sinhala-to-tamil/run.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from gtts import gTTS
import speech_recognition as sr
from googletrans import Translator
import playsound
import os

translator = Translator()

def translator_fun(text):
return translator.translate(text, src='si', dest='ta')

def text_to_voice(text_data):
myobj = gTTS(text=text_data, lang='ta', slow=False)
myobj.save("cache_file.mp3")
playsound.playsound("cache_file.mp3")
os.remove("cache_file.mp3")

while True:
rec = sr.Recognizer()

with sr.Microphone() as source:
print("Listening...")
rec.pause_threshold = 1
audio = rec.listen(source, phrase_time_limit=10)
try:
print("Processing...")
spoken_text = rec.recognize_google(audio, language='si')

print("Translating...")
tamil_version = translator_fun(spoken_text)

print("Text to Speech...")
text_to_voice(tamil_version.text)

except Exception as e:
print(e)
Binary file added system-architeture.png.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
36 changes: 36 additions & 0 deletions tamil-to-chinese/run.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from gtts import gTTS
import speech_recognition as sr
from googletrans import Translator
import playsound
import os

translator = Translator()

def translator_fun(text):
return translator.translate(text, src='ta', dest='zh-CN')

def text_to_voice(text_data):
myobj = gTTS(text=text_data, lang='zh-CN', slow=False)
myobj.save("cache_file.mp3")
playsound.playsound("cache_file.mp3")
os.remove("cache_file.mp3")

while True:
rec = sr.Recognizer()

with sr.Microphone() as source:
print("Listening...")
rec.pause_threshold = 1
audio = rec.listen(source, phrase_time_limit=10)
try:
print("Processing...")
spoken_text = rec.recognize_google(audio, language='ta')

print("Translating...")
tamil_version = translator_fun(spoken_text)

print("Text to Speech...")
text_to_voice(tamil_version.text)

except Exception as e:
print(e)
Loading

0 comments on commit 86488fb

Please sign in to comment.