|
Table of Contents
|
Nesta página falaremos um pouco sobre a Java Speech API. Application Program Interface(API) criada com intuito de prover síntese e reconhecimento de voz nas aplicações Java.
Será apresentado alguns passo de como instalar o IBM Via Voice, assim como o ibmjs.jar que contém a Java Speech API que conversa com o IBM ViaVoice.
Caso vcs não tenham alguns dos arquivos abaixo, me digam que eu posso providenciar, a versão que tenho do IBM ViaVoice é antiga(5.0), mas ainda funciona.
Arquivos para Instalação
http://www.natalnet.br/~aquiles/ibmviavoice/
Instalação
Passo 1 - Instalando o TTS Runtime
Primeiro se deve instalar o Text to Speech(TTS) Runtime. Os arquivos de runtime variam de acordo com linguagem utilizada. Sendo assim temos um runtime para cada língua:
Ex:
Português : tts5bp
Inglês: tts5us
Escolha um, ou instale os dois de acordo com suas necessidades.
Passo 2 - Instalando o TTS SDK
Instale o arquivo que esta no .zip:tts5sdk.zip, clicando em setup.exe
Passo 3 - Instalando VVCC Runtime
Instale o IBM ViaVoice Command & Control Runtime 7.0, no .zip vvrtcbr7, execute setup.exe
Passo 4 -Instalando o IBM ViaVoice SDK
Execute o arquivo vvsdk15.exe
Passo 5 -Instalando o SDK com Java
Instale o .exe da pasta:
03 - ViaVoice SDK, Java Technology Edition V1.0
ibmjs100r13a.exe
Depois siga as instruções contidas no readme.html que se encontra no diretório onde foi instalado o ibmjs. Normalmente ele é instalado em c:/ibmjs
Suppose you have unpacked the installation package to c:\ibmjs. You should
- modify your CLASSPATH variable to include c:\ibmjs\lib\ibmjs.jar, and
- modify your PATH variable to include the c:\ibmjs\lib directory
- from c:\ibmjs, execute install.bat to register the IBM engines with the system.
Passo 6 - Configurando o Projeto no Eclipse
Baixe a pasta JavaSpeech.zip e coloque ela como projeto no eclipse.
La vc encontrará o ibmjs.jar associado ao projeto como uma biblioteca.
Encontre a classe com.ibm.speech.util.Install.class dentro do ibmjs.jar e e o execute.
Depois disso reinicie o computador.
Passo 7 - Testando o Sintetizador.java
Execute a aplicação Sintetizador.java
Vc deverá escutar o computador falando: Testando Sintetizador
Caso vc veja o seguinte string ao invéz do som:
<JSML> <BREAK MSECS="300"><PROS PITCH="80" RANGE="50" RATE="150">Testando o Sintetizador.</PROS></JSML>
Algo deu errado, veja se vc não esqueceu de executar algum dos passos acima.
Passo 8 - Treinando o IBM ViaVoice para o reconhecimento
Vá no painel de controle -> Opções do IBM Via Voice
Clique em Ok, re-selecione o padrão de voz Português, ate que ele permita vc APLICAR.
Quando vc apertar no botão APLICAR, ele irá começar o procedimento de analisar sua voz.
Passo 9 - Corrigindo o PATH para o reconhecimento de voz
Adiciona na variável de ambiente PATH o seguinte diretório:
C:\Arquivos de programas\ViaVoice\BIN
Passo 10 - Testando o Reconhecedo.java
Para testar o Reconhecedor, vc precisar estar conectado a internet, pois a gramatica utilizada no teste esta no seguinte endereço:gramatica.gram
Mas caso vc queira testar localmente, vc pode simplesmente alterar o endereço onde a gramática se encontra.
Vídeo - Projeto: Reconhecimento e Sintetização de Voz utilizando Java Speech API - UCSAL
HemersonSantos 16 vídeos Inscrever-se







Valeu pelo artigo!! Fiz aqui em casa os testes e funcionou perfeitamente!
Abraço!!
Olá de novo!!
Como tinha comentado rodou legalzinho o programa!! Mas gostaria de saber se não tem como trocar ou configurar a voz por uma menos robótica e mais gatinha :) e se tem jeito de executar comandos em outros programas exemplo ao falar Ctrl+t ele abriria uma segunda aba no internet explorer!! Igual ao da IBM viavoice!!
Mais uma vez parabéns pelo artigo e obrigado pela atenção!!
Tem como configurar sim, tanto pelo viavoice quanto pelo java speech. Existem tags que definem como a voz será sintetizada.
<JSML> <BREAK MSECS="300"><PROS PITCH="80" RANGE="50" RATE="150">Testando o Sintetizador.</PROS></JSML>
mseg, pitch, range e rate vc modifica para configurar melhor a voz desejada.
Valew galera pelos elogios. Com eles a gente carrega forças para continuar ajudando.
[]s
Cara…, achei esse texto no google e testei aqui, funcionou quase tudo…
Eu instalei o IBM Via Voice 9, provavelmente seja por isso, mas não consegui fazer rodar o Reconhecedo.java, o "rec = Central.createRecognizer" ta recebendo NULL, pq a dll não deve ter o módulo mais "C:\Arquivos de programas\ViaVoice\Bin\uvocab.dll: Não foi possível encontrar o módulo especificado. (7e)"
Se puder me mandar a sua dll pra eu testar aqui, acho q poderia ser uma solução!!
tenho o mesmo problema :( se alguem puder me ajudar agradeceria
Eu tive este mesmo problema,
Eu uso W7 64 bits, precisei configurar minha variável de ambiente PATH de forma diferente da mencionada no passo a passo.
No passo 9 fomos instruidos a mudar a adicionar o seguinte caminho na variavel de ambiente: C:\Arquivos de programas\ViaVoice\BIN
Mas o correto para W7 64 bits é C:\Program Files (x86)\ViaVoice\BIN
Abraço
Ola Thiago,
eu uso o W7 64 bits também,mas não consigo corrigir esse erro abaixo ao executar o Synthesizer, já virei a madrugada tentado resolver mas até o momento sem sucesso, você poderia me ajudar?
Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\ibmjs\lib\ibmsynth.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary1(Unknown Source)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at com.ibm.speech.synthesis.SynthImpl.loadLibraries(SynthImpl.java:135)
at com.ibm.speech.synthesis.IBMEngineCentral.createEngineList(IBMEngineCentral.java:82)
at javax.speech.Central.availableSynthesizers(Central.java:660)
at javax.speech.Central.createSynthesizer(Central.java:553)
at br.akls.javaspeech.sintetizer.Sintetizador.<init>(Sintetizador.java:19)
at br.akls.javaspeech.sintetizer.Sintetizador.main(Sintetizador.java:43)
Tenho o mesmo erro, alguem aí conseguiu resoslver?
Alguem sabe que problema eh esse??? help!!
Saudações Aquiles!
Congratulações pela sua postagem!
Aquiles, já tenho pesquisado a respeito da API Java Speech, sites em inglês e português…
O problema é que não estou conseguindo rodar nenhum programa exemplo que estão disponiveis em varios sites! No caso especifico, esse seu programa exemplo. Fiz tudo como vc orienta, porem não consegui executar o programa…
Acho q dpois do passo 6 q começou a não dar certo, Se puder me ajudar agradeço imensamente… Ou se tiver algum site aí q dê detalhadamente a forma de instalar os programas necessários e de como rodar o programa, eu agradeço!
Também estou com a mesma dificuldade. Se vc conseguiu por favor me ajude também.
meu email é moc.liamg|senel.semaj#moc.liamg|senel.semaj
sds
James
Boa noite Aquiles,
Parabéns por esta publicação. Gostei Muito, pois estamos utilizando isto em nosso TCC. Só tenho uma dúvida: como é que podemos fazer a integração falar e o ViaVoice executa e realiza a ação?
Obrigado.
Matos
Ola seu aluno do curso de ciência da computação em Taubaté SP e gostaria de saber se você pode enviar os arquivos da java speech para mim pois eu nao consigo fazer o download deles da sua pagina
Obrigado
Parabéns Aquiles, seu tutorial foi muito simples e sem enrolação, funcionou tudo aqui.
Para aqueles que tiveram problemas com o uvocab.dll
Aparentemente o problema ocorre pq o sistema não consegue localizar a dll em questão.
1 - Verifiquem se existe a uvocab.dll na pasta C:\Arquivos de programas\ViaVoice\Bin\ (certamente ela vai estar lá);
2 - Adicionem a variável patch - isso é fundamental (passo 9);
3 - Caso ainda não funcione, reiniciei o computador.
Outro ponto que devemos atentar é setar corretamente a url para o arquivo gramatica.gram, caso você não deseje utilizar o disponibilizado no endereço http://aquilesburlamaqui.wikidot.com/local--files/javaspeech/gramatica.gram
no reconhecedor deu esse erro aki:
passou 1: com.ibm.speech.recognition.IBMRecognizer@1cf8583
passou 2:
Reconhecedor - Error 1: javax.speech.recognition.GrammarException: Grammar gramatica not found.
javax.speech.recognition.GrammarException: Grammar gramatica not found.
at com.ibm.speech.recognition.IBMRecognizer.loadJSGF(IBMRecognizer.java:334)
at com.ibm.speech.recognition.IBMRecognizer.loadJSGF(IBMRecognizer.java:324)
at br.akls.javaspeech.recognizer.Reconhecedor.iniciar(Reconhecedor.java:74)
at br.akls.javaspeech.recognizer.Reconhecedor.main(Reconhecedor.java:94)
como faco para corrigi-lo??
Eu tive este problema também.
A gramatica online deve estar indisponível.
Eu alterei a classe Reconhecedor.java para ler o arquivo gramatica.gram da pasta do projeto ao invés de tentar conectar a um gramatica online.
Aquiles, Boa Noite, estou fazendo um projeto de Reconhecimento de Voz, utilizando redes neurais, segui o seu tutorial e funcionou bacana mas quero evoluir a ponto de não usar o ibm via voice, por isso estou precisando do "java speech", se voce tiver e puder me mandar, desde já lhe agradeço.
Obrigado.
Post preview:
Close preview