Artigo Java Magazine 04 - JavaSpeech

Confira nesta edição de Java Magazine uma entrevista Bill Day Java speech, Interface ricas com flash

Esse artigo faz parte da revista Java Magazine edição 04. Clique aqui para ler todos os artigos desta edição

Clique aqui para ler essa revista em PDF.

JavaSpeech

Reconhecimento e sintetização de voz com Java

O reconhecimento de comandos de voz por computadores sempre fascinou o Homem. Vários filmes apresentam a possibilidade de conversar com um computador, ditar um texto ou emitir comandos utilizando a voz.

Na outra direção, imagine um programa complexo que deve se comunicar com o usuário através de sons. Pense como seria desgastante descrever todas as mensagens possíveis para se gravar em .wav, por exemplo. É por isso que jogos como o FIFA fazem uso de sintetizadores de voz para as narrações das partidas de futebol. Existem ainda muitos outros benefícios como a possibilidade de pessoas com limitações físicas poderem ouvir seus e-mails ou ditar cartas.

Varias empresas trabalham intensamente para permitir esta façanha. Um bom exemplo é o Via Voice da IBM, um programa comercial que permite, entre outras coisas, ditar cartas em produtos como o Microsoft Office. Outras empresas como a Microsoft e a Dragon System oferecem ótimos sistemas, ou engines, para tratamento de voz.

Tecnologias e implementações

A tecnologia de fala computadorizada pode ser dividida em duas categorias: reconhecimento de voz e sintetização de voz.

Reconhecimento de voz habilita o computador a ouvir uma linguagem falada e determinar o que foi dito, ou seja, é o processo de converter em texto um som contendo palavras. Sintetização de voz é o processo inverso, transformando texto em som. É freqüentemente chamado de text-to-speech.

Java não fica atrás nesta área. A Sun definiu uma especificação que representa uma interface genérica para um engine, a Java Speech API (JSAPI). A JSAPI não implementa o engine em si, funcionando apenas como uma camada entre seus programas e os engines desenvolvidos por terceiros. Os engines podem ser soluções em hardware ou software e podem estar na máquina local ou em um servidor. São eles que realmente trabalham com a placa de som capturando as falas ou sintetizando palavras.

Ao contrário do que acontece com outras APIs Java, não é fornecida uma implementação de referência da Java Speech API. Em vez disso, no site oficial da JSAPI (veja links) fornece uma lista de produtos e empresas que implementam a API. Algumas implementações são relacionadas na Tabela 1.

Na Figura 1 podemos ver o poder da JSAPI. Ela possibilita que nossos programas utilizem qualquer engine de qualquer empresa e em qualquer sistema operacional sem necessidade de alterar uma única linha de código e usufruindo de toda a potencialidade do Java.

 

Produto

Descrição

FreeTTS

 

Sintetizador de voz de código aberto totalmente escrito em Java.

IBM Speech for Java

Implementação da JSAPI baseada no IBM Via Voice.

The Cloud Garden

Implementação desenvolvida para funcionar com engines baseados na SAPI da Microsoft. Funciona com os produtos IBM ViaVoice, Dragon NaturallySpeaking  e outros.

Conversa Web 3.0

Um browser habilitado para funcionar com comandos de voz."

[...] continue lendo...
Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados