-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathreconhecimento_voz.py
More file actions
96 lines (56 loc) · 2.15 KB
/
reconhecimento_voz.py
File metadata and controls
96 lines (56 loc) · 2.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# -*- coding: utf-8 -*-
"""
Created on Fri May 1 19:22:15 2020
@author: aserpa
"""
import speech_recognition as sr
import win32com.client as wincl
import time
from googletrans import Translator as tl
#Define a saida usando o audio do WIndows
speak = wincl.Dispatch("SAPI.SpVoice")
vcs = speak.GetVoices()
#Define o Microfone
mic = sr.Microphone()
#Entrada do Mic
mic.device_index = 1
#Iniciando
speak.Voice
speak.SetVoice(vcs.Item (0)) #Usando portugues
speak.Speak('Olá, eu sou Judiiti!')#, a tradutora ambulante!')
#speak.Speak('Agora aprendi Espanhol também')
speak.Speak('VocÊ quer traduzir para Inglês ou Espanhol?')
#speak.Speak('Qual a palavra')# ou frase a ser traduzida do Português para o Inglês?')
#Usando o Mic como fonte e jogando o audio na variavel audio
with mic as source:
sr.Recognizer().adjust_for_ambient_noise(source)
audio = sr.Recognizer().listen(source)
#time.sleep(3)
#Usando o Google para reconhecimento de TTS
vGrava = sr.Recognizer().recognize_google(audio, language='pt-BR')
#vGrava = sr.Recognizer().recognize_google(audio, language='en-US') #Ingles
#Define o Idioma
if vGrava == 'espanhol':
vLang = 'es'
elif (vGrava == 'ingles' or vGrava == 'inglês'):
vLang = 'en'
print(vGrava)
print(vLang)
speak.Speak('Ok, entendi. Vamos traduzir para o ' + vGrava)
speak.Speak('Qual palavra?')
#Usando o Mic como fonte e jogando o audio na variavel audio
with mic as source:
sr.Recognizer().adjust_for_ambient_noise(source)
audio = sr.Recognizer().listen(source)
#Usando o Google para reconhecimento de TTS
vGrava = sr.Recognizer().recognize_google(audio, language='pt-BR') #Portugues
#vGrava = sr.Recognizer().recognize_google(audio, language='en-US') #Ingles
print('Palavra a ser traduzida: '+vGrava)
#Faz a tradução
vTrans = tl(service_urls=['translate.google.com.br']).translate(vGrava, src='pt', dest=vLang)
print('Tradução: '+vTrans.text)
#time.sleep(2)
#Retorna o valor traduzido na voz definida usando ingles como saida
speak.Voice
speak.SetVoice(vcs.Item (1))
speak.Speak(vTrans.text)