SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Java Speech
API de Java  JSAPI
Here comes your footer  Page 2
Java Speech API
 La API de Java Speech (JSAPI) es una extensión de la
plataforma Java.
 Las extensiones son paquetes de clases escritos en
lenguaje de programación java (u otro código nativo
asociado) que los desarrolladores de aplicaciones
pueden utilizar para extender la funcionalidad de la
plataforma Java.
Concepto
Here comes your footer  Page 3
Java Speech API
 Java Speech API 1.0 fue lanzado por primera vez por
Sun en 1998 y define los paquetes tanto para el
Reconocimiento de Voz y Síntesis de Voz.
 Todas las implementaciones JSAPI disponibles en la
actualidad son compatible con 1.0 y se continua
trabajando con la version 2.0
Historia
Here comes your footer  Page 4
Java Speech API
 Proveer soporte para sintetizadores de voz y
para sistemas de reconocimiento de habla
(tanto aquellos de Control por Comandos como
los de Dictado).
 Ser simple, compacto y fácil de aprender.
 Permitir el acceso al estado del arte de la
tecnología del habla.
Obejtivos de Diseño
Here comes your footer  Page 5
Java Speech API
 Soportar la integración con otras capacidades
de la plataforma Java, como por ejemplo la
API de Java Media.
 Proveer una interfaz multiplataforma
y multiproveedor robusta para la síntesis y
reconocimiento del habla, permitiendo a los
desarrolladores escribir aplicaciones que no
dependen de las características propias de una
plataforma o de un motor de voz.
Obejtivos de Diseño
Here comes your footer  Page 6
Java Speech API
 Mediante la utilización de la Interfaz Nativa Java (JNI) y las
envolturas de SW Java (Java SW wrappers) es posible
implementar la API de Java Speech en el nivel superior del
SW de habla existente.
Implementaciones
Implementaciones Nativas
Here comes your footer  Page 7
Java Speech API
 Los sintetizadores y reconocedores de habla pueden ser
escritos en Java.
 Estas implementaciones tienen el beneficio de la portabilidad
y de las mejoras continuas en la velocidad de ejecución de las
máquinas virtuales Java.
Implementaciones
Implementaciones Java
Here comes your footer  Page 8
Java Speech API
 Estas aplicaciones se implementan generalmente sobre HW
dedicado capaz de soportar un gran número de conexiones
simultáneas.
 Las capacidades de reconocimiento y síntesis de habla en
este HW puede ser envuelto con software Java para
soportar la JSAPI como un tipo especial de implementación
nativa.
Implementaciones
Implementaciones Telefonicas
Here comes your footer  Page 9
Java Speech API
Para utilizar JSAPI se debe contar con requerimientos
mínimos de HW y SW. Los requerimientos individuales
de los sintetizadores y reconocedores de habla varían
mucho entre uno y otro, por lo que el usuario deberá
analizarlos cuidadosamente al momento de elegir.
Requerimientos
 Software de habla: se debe disponer de un
sintetizador o reconocedor de habla compatible
con JSAPI
Here comes your footer  Page 10
Java Speech API
Requerimientos
 Requerimientos del sistema: es necesario controlar
los requerimientos mínimos de memoria, CPU y
espacio en disco al momento de adquirir un
producto de habla.
 HW de audio: los sintetizadores de habla requieren
salida de audio, en tanto que los reconocedores
requieren micrófonos. Los sistemas de dictado
requieren placas de sonido de buena calidad para
funcionar de manera óptima.
Here comes your footer  Page 11
Motores del Habla
Here comes your footer  Page 12
Motores del Habla
Concepto
 El paquete javax.speech de la JSAPI define una
representación abstracta por SW.
 Se denomina motor de habla al sistema diseñado
para tratar con las entradas o salidas de habla.
 Los sintetizadores y reconocedores de habla son
instancias del motor de habla.
 Los sistemas de verificación del hablante y los de
identificación del hablante también son motores de
habla, aunque no son soportados por la JSAPI.
Here comes your footer  Page 13
Motores del Habla
Concepto
 Este paquete define clases e interfaces que definen la
funcionalidad básica del motor.
 Los paquetes javax.speech.synthesis y
javax.speech.recognition extienden y aumentan la
funcionalidad básica para definir las capacidades
específicas de los sintetizadores y reconocedores de
habla.
Here comes your footer  Page 14
Motores del Habla
 Los pasos básicos para utilizar un motor de habla en una
aplicación son:
1. Identificar los requerimientos funcionales de la aplicación
2. Localizar y crear un motor que cubra esos requerimientos
3. Asignar los recursos necesarios para el motor
4. Configurar el motor
5. Comenzar la operación del motor
6. Usar el motor
7. Desasignar los recursos del motor.
* Los pasos 4 a 6 son diferentes según se trate de motores de reconocimiento
o síntesis de habla. Los demás pasos son iguales para ambos tipos.

Here comes your footer  Page 15
Motores del Habla
Propiedades
A continuación se listan las propiedades básicas de los
motores de habla:
Propiedades básicas de selección de motor: EngineModeDesc
Propiedad Descripción
EngineName
Es una cadena que define el nombre del motor de habla, por
ejemplo “Málaga Dictation System”.
ModeName
Es una cadena que define un modo específico de operación,
por ejemplo “Málaga Spanish dictador”.
Locale
Un objeto java.util.Locale que indica el idioma soportado por
el motor y, opcionalmente, alguna variante (como podría ser
inglés británico o inglés estadounidense). La clase Locale usa
los códigos ISO 639 para idioma y 3166 para país. Por
ejemplo: Locale("fr", "ca") representa el idioma francés
canadiense en tanto que Locale("en", "") representa el idioma
inglés.
Running
Es un objeto booleano cuyo valor es TRUE si el motor está
corriendo en la plataforma y FALSO si no es así. La selección
de un motor que está corriendo permite compartir recursos y
ayuda a acelerar la creación del objeto motor de habla.
Here comes your footer  Page 16
Motores del Habla
Propiedades
A continuación se listan las propiedades básicas de los
motores de habla:
Propiedades de selección del Sintetizador: SynthesizerModeDesc
Propiedad Descripción
List ofvoices
Es un arreglo de voces que el sintetizador puede producir.
Cada voz es definida por una instancia de la clase Voice que
encapsula el nombre de la voz, el género, la edad y el estilo.
Here comes your footer  Page 17
Motores del Habla
Propiedades
A continuación se listan las propiedades básicas de los
motores de habla:
Propiedades de selección del Reconocedor: RecognizerModeDesc
Propiedad Descripción
Dictationsupported
Es un valor booleano que indica si este modo de operación del
reconocedor soporta una gramática de dictado.
Speaker profiles
Es una lista de objetos de Speakerprofile para usuarios que
entrenaron al reconocedor. Los reconocedores que no soportan
entrenamiento retornan una lista nula.
Here comes your footer  Page 18
Motores del Habla
• La forma más fácil de crear un motor de habla es requerir el motor
por defecto.
• Esto es adecuado cuando la aplicación requiere un motor para el
idioma local y no tiene requerimientos funcionales específicos.
• La clase Central en el paquetejavax.speech.package se usa para
localizar y crear motores.
• La creación de un motor por defecto usa dos métodos estáticos de la
clase Central:
Synthesizer Central.createSynthesizer(EngineModeDesc mode);
Recognizer Central.createRecognizer(EngineModeDesc mode);
Here comes your footer  Page 19
Motores del Habla
El siguiente código permite crear un reconocedor y sintetizador por
defecto:
import javax.speech.*; import javax.speech.synthesis.*; import
javax.speech.recognition.*;
{ // Get a synthesizer for the default locale
Synthesizer synth = Central.createSynthesizer(null);
// Get a recognizer for the default locale
Recognizer rec = Central.createRecognizer(null);}
Here comes your footer  Page 20
Motores del Habla
A continuación se presenta un ejemplo que muestra un método para
crear un reconocedor de dictado para el locale por defecto:
/** Get a dictation recognizer for the default locale */
Recognizer createDictationRecognizer()
{
// Create a mode descriptor with all required features
RecognizerModeDesc required = new RecognizerModeDesc();
required.setDictationGrammarSupported(Boolean.TRUE);
return Central.createRecognizer(required);
}
Here comes your footer  Page 21
Motores del Habla
Eventos de Habla
Los eventos de JSAPI siguen el modelo de eventos de JavaBeans.
Los eventos son emitidos hacia un “oyente” adjunto al objeto
involucrado en la generación del evento. Todos los eventos de
habla se derivan de la clase SpeechEvent del paquete javax.speech.
Eventos de habla: paquete javax.speech
Nombre Descripción
SpeechEvent Clase padre de todos los eventos de habla.
EngineEvent
Señala un cambio en el estado del motor de
habla.
AudioEvent Señala un evento de entrada o salida de audio.
EngineErrorEvent
Es una sub clase que señala la ocurrencia de un
problema asincrónico en el motor.
Here comes your footer  Page 22
Motores del Habla
Eventos de Habla
Eventos de habla: paquete javax.speech.synthesis
Nombre Descripción
SynthesizerEvent
Extiende EngineEvent para eventos
especializados de un sintetizador.
SpeakableEvent
Señala el progreso en la salida de texto
sintetizado.
Eventos de habla: paquete javax.speech.recognition
Nombre Descripción
RecognizerEvent
Extiende EngineEvent para eventos
especializados de un reconocedor.
GrammarEvent
Señala una actualización o un cambio de estado
de la gramática de reconocimiento.
ResultEvent
Señala cambios de estado y de datos de los
resultados del reconocimiento
RecognizerAudioEvent
Extiende AudioEvent con eventos para iniciar y
parar el habla y la actualización de niveles de
audio.
Here comes your footer  Page 23
JSAPI Docs
Here comes your footer  Page 24
Java Speech API
Paquete javax.speech
Resumen Interface
AudioListener
La interfaz de escucha para recibir eventos asociados con la entrada de audio o de
salida de un motor.
AudioManager
El AudioManager es proporcionado por un motor de voz - un reconocedor o
Sintetizador - para permitir que una aplicación de control de entrada / salida de audio
y para supervisar los eventos relacionados con el audio
EngineCentral
Proporciona una lista de objetos EngineModeDesc que definen los modos de
funcionamiento disponibles de un motor de voz
EngineCreate
La interfaz EngineCreate se implementa objetos EngineModeDesc obtenidos a través
de las llamadas a los objetos EngineCentral de cada motor de voz registrada en la
clase Central.
Engine
La interfaz del motor es la interfaz principal para todos los motores de voz, incluyendo
el reconocedor y sintetizador.
EngineListener
Métodos de definición de interfaz que se llamará cuando se producen eventos de
cambio de estado de un motor de voz
EngineProperties
Un objeto EngineProperties define el conjunto de propiedades de tiempo de ejecución
de un motor.
VocabManager Interfaz para la gestión de las palabras que utiliza un motor de voz
Here comes your footer  Page 25
Java Speech API
Paquete javax.speech
Resumen Class
AudioAdapter Una aplicación trivial de la interfaz AudioListener que recibe eventos de audio de un motor
AudioEvent Describe eventos asociados con la entrada / salida de audio para un motor.
Central La clase central es el punto de acceso inicial a todas las entradas de voz y capacidades de salida
EngineAdapter Aplicación Trivial de la interfaz EngineListener que recibe un EngineEvents.
EngineErrorEvent
EngineErrorEvent es una notificación asíncrona de un error interno en el motor que evita el comportamiento
normal de ese motor.
EngineEvent EngineEvent notifica cambios en el estado de un sintetizador de voz o el motor de reconocimiento
EngineList EngineList es un contenedor para un conjunto de objetos EngineModeDesc..
EngineModeDesc
EngineModeDesc proporciona información acerca de un modo de funcionamiento específico de un motor de
voz.
SpeechEvent La clase de evento raíz para todos los eventos de habla.
SpeechPermission Esta clase representa los permisos del habla.
Word La clase Word proporciona una representación estándar de palabras decible para motores de voz.
Here comes your footer  Page 26
Java Speech API
Paquete javax.speech
Resumen Exception
AudioException
Se encontró un problema de conexión de audio a / desde
un motor de voz.
EngineException
Las señales que se produjo un error al intentar crear o
acceder a un motor de síntesis de voz, el motor de
reconocimiento de voz u objeto EngineCentral
SpeechException
Señales de que se ha producido una excepción de Java
Speech API.
VendorDataException
Las señales de que un problema se ha encontrado cargar o
guardar algún tipo de datos específicos del proveedor
Here comes your footer  Page 27
Java Speech API
Paquete javax.speech
Resumen Error
EngineStateError
Señala un error causado por una llamada a un método ilegal de
un motor de voz.
SpeechError Indica que se ha producido un error en el paquete javax.speech
Here comes your footer  Page 28
Java Speech API
Paquete javax.speech.recognition
Resumen Interface
DictationGrammar Proporciona acceso a las capacidades de dictado de un reconocedor.
FinalDictationResult
Proporciona información sobre el resultado finalizado una expresión que coincide
con un DictationGrammar.
FinalResult
FinalResult es una extensión de la interfaz de resultado que proporciona
información sobre un resultado que haya sido finalizado - es decir, el
reconocimiento es completa.
FinalRuleResult
Proporciona información sobre el resultado finalizado una expresión que coincide
con un RuleGrammar
Grammar
Interfaz de Padres con el apoyo de todas las gramáticas de reconocimiento
incluyendo DictationGrammar y RuleGrammar.
GrammarListener
A GrammarListener recibe notificaciones de eventos de cambio de estado de una
gramática..
RecognizerAudioListener
Se extiende el conjunto de eventos de audio de un motor para un reconocedor
añadiendo un evento de nivel de audio.
Recognizer Un reconocedor proporciona acceso a las capacidades de reconocimiento de voz.
Here comes your footer  Page 29
Java Speech API
Paquete javax.speech.recognition
RecognizerListener
Define una extensión de la interfaz EngineListener para
eventos específicos asociados con un reconocedor.
RecognizerProperties Permite el control de las propiedades de un reconocedor
Result
Un resultado se emite por un reconocedor ya que reconoce
una expresión de entrada que coincide con una gramática
activa.
ResultListener
Los métodos de un ResultListener recibir notificaciones de
los eventos relacionados con un objeto de resultado.
ResultToken
Una muestra (generalmente una palabra) contenida por un
resultado que representa algo oído por un reconocedor.
RuleGrammar
Interfaz RuleGrammar describe una gramática que define
lo que los usuarios pueden decir por un conjunto de reglas.
SpeakerManager Proporciona el control de SpeakerProfiles un reconocedor.
Here comes your footer  Page 30
Java Speech API
Paquete javax.speech.recognition
Resumen Class
GrammarAdapter El adaptador que recibe eventos de gramática..
GrammarEvent
A GrammarEvent se emite a cada GrammarListener unido a una gramática cuando se producen
grandes acontecimientos relacionados con la gramática
GrammarSyntaxDetail
Descripción de un problema que se encuentra en una gramática general, vinculado con un
GrammarException
RecognizerAdapter El adaptador que recibe eventos de un reconocedor.
RecognizerAudioAdapter Adaptador para una serie de eventos de audio de un reconocedor
RecognizerAudioEvent
RecognizerAudioEvent Evento emitido para indicar la detección de la voz en el flujo de audio entrante
o para indicar periódicamente el nivel de entrada de audio.
RecognizerEvent Evento publicado por aprendidos a través RecognizerListener.
RecognizerModeDesc
RecognizerModeDesc se extiende la EngineModeDesc con propiedades que son específicas de los
reconocedores de voz
ResultAdapter El adaptador que recibe eventos de un objeto de resultado.
Here comes your footer  Page 31
Java Speech API
Paquete javax.speech.recognition
ResultEvent
A ResultEvent es emitida por un objeto de resultado para indicar cambios en las fichas y
los movimientos registrados en el estado.
RuleAlternatives
RuleAlternatives representa una regla compuesta de un conjunto de sub-reglas
alternativa.
RuleCount
Se fija un recuento a un objeto de regla contenida para indicar el número de veces que
puede ocurrir.
Rule
Un objeto de regla es el componente básico de una RuleGrammar y representa todo lo
que puede aparecer en el lado derecho de una definición de la regla en Java Formato
gramática del habla.
RuleName Un RuleName es una referencia a una regla llamada
RuleParse
Representa la salida de un análisis sintáctico de un resultado o una cadena contra un
RuleGrammar
RuleSequence
RuleSequence es una regla compuesta de una secuencia de sub-reglas que deben ser
cada uno habla en orden.
RuleTag RuleTag adjunta una etiqueta a un objeto de regla contenida
RuleToken RuleToken representa texto decible en un RuleGrammar.
SpeakerProfile
Un objeto SpeakerProfile se utiliza para identificar cada inscripción por un usuario a un
reconocedor..
Here comes your footer  Page 32
Java Speech API
Paquete javax.speech.synthesis
Resumen Interface
Speakable
Un objeto que implementa la interfaz Speakable se puede
proporcionar para el método de hablar de un sintetizador
para ser hablado.
SpeakableListener
La interfaz de escucha para recibir notificaciones de los
eventos durante la salida hablada de un Speakable.
Synthesizer
La interfaz del sintetizador proporciona acceso primario a
las capacidades de síntesis de voz.
SynthesizerListener
Una extensión a la interfaz EngineListener para la
recepción de la notificación de eventos asociados con un
sintetizador.
SynthesizerProperties
Proporciona el control de las propiedades de tiempo de
ejecución de un sintetizador
Here comes your footer  Page 33
Java Speech API
Paquete javax.speech.synthesis
Resumen Class
SpeakableAdapter
Adaptador que recibe eventos asociados a la producción hablada
de un objeto Speakable.
SpeakableEvent Evento emitido durante la producción hablada de texto
SynthesizerAdapter Adaptador que recibe eventos asociados con un Sinthetizer.
SynthesizerEvent
Evento emitido por Sintetizador para indicar un cambio de estado o
de otra actividad.
SynthesizerModeDesc
SynthesizerModeDesc se extiende la EngineModeDesc con
propiedades que son específicas a sintetizadores de voz
SynthesizerQueueItem Representa un objeto en la cola de salida de voz de un Synthetizer.
Voice Una descripción de una voz de salida de un sintetizador de voz.
Here comes your footer  Page 34
Java Speech API
Paquete javax.speech.synthesis
Exception Resumen
JSMLException
Lanzado si un problema de sintaxis se encuentra con el texto en
el marcado con la voz de lenguaje de marcado de Java.
Here comes your footer  Page 35
Bibliografia
• http://www.oracle.com/technetwork/java/jsapifaq-135248.html
• http://docs.oracle.com/cd/E17802_01/products/products/java-
media/speech/forDevelopers/jsapi-doc/
• http://www.sicuma.uma.es/sicuma/independientes/argentina08/Liliana/JSAPI.htm
• http://en.wikipedia.org/wiki/Java_Speech_API
• http://cafelojano.wordpress.com/2007/08/13/texto-a-voz-en-java-texto-to-speech/
• http://sourceforge.net/projects/jsapi/
Here comes your footer  Page 36
FIN

Weitere ähnliche Inhalte

Was ist angesagt?

DevOps Interview Questions and Answers 2019 | DevOps Tutorial | Edureka
DevOps Interview Questions and Answers 2019 | DevOps Tutorial | EdurekaDevOps Interview Questions and Answers 2019 | DevOps Tutorial | Edureka
DevOps Interview Questions and Answers 2019 | DevOps Tutorial | EdurekaEdureka!
 
Getting Started with Azure Artifacts
Getting Started with Azure ArtifactsGetting Started with Azure Artifacts
Getting Started with Azure ArtifactsCallon Campbell
 
Solr Exchange: Introduction to SolrCloud
Solr Exchange: Introduction to SolrCloudSolr Exchange: Introduction to SolrCloud
Solr Exchange: Introduction to SolrCloudthelabdude
 
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | EdurekaWhat is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | EdurekaEdureka!
 
An Introduction To Jenkins
An Introduction To JenkinsAn Introduction To Jenkins
An Introduction To JenkinsKnoldus Inc.
 
Repository Management with JFrog Artifactory
Repository Management with JFrog ArtifactoryRepository Management with JFrog Artifactory
Repository Management with JFrog ArtifactoryStephen Chin
 
Apache Kafka 0.8 basic training - Verisign
Apache Kafka 0.8 basic training - VerisignApache Kafka 0.8 basic training - Verisign
Apache Kafka 0.8 basic training - VerisignMichael Noll
 
Control-with-Ansible-Tower
Control-with-Ansible-TowerControl-with-Ansible-Tower
Control-with-Ansible-TowerMark Costin
 
Azure DevOps Presentation
Azure DevOps PresentationAzure DevOps Presentation
Azure DevOps PresentationInCycleSoftware
 
KCD Italy 2022 - Application driven infrastructure with Crossplane
KCD Italy 2022 - Application driven infrastructure with CrossplaneKCD Italy 2022 - Application driven infrastructure with Crossplane
KCD Italy 2022 - Application driven infrastructure with Crossplanesparkfabrik
 
Patrones de creación
Patrones de creaciónPatrones de creación
Patrones de creaciónAutentia
 
Kubernetes Networking | Kubernetes Services, Pods & Ingress Networks | Kubern...
Kubernetes Networking | Kubernetes Services, Pods & Ingress Networks | Kubern...Kubernetes Networking | Kubernetes Services, Pods & Ingress Networks | Kubern...
Kubernetes Networking | Kubernetes Services, Pods & Ingress Networks | Kubern...Edureka!
 
DevOps Introduction
DevOps IntroductionDevOps Introduction
DevOps IntroductionRobert Sell
 
Azure Web Apps - Introduction
Azure Web Apps - IntroductionAzure Web Apps - Introduction
Azure Web Apps - IntroductionChristopher Gomez
 
[JAZUG Tohoku Azure DevOps] Azure DevOps
[JAZUG Tohoku Azure DevOps] Azure DevOps[JAZUG Tohoku Azure DevOps] Azure DevOps
[JAZUG Tohoku Azure DevOps] Azure DevOpsNaoki (Neo) SATO
 

Was ist angesagt? (20)

DevOps Interview Questions and Answers 2019 | DevOps Tutorial | Edureka
DevOps Interview Questions and Answers 2019 | DevOps Tutorial | EdurekaDevOps Interview Questions and Answers 2019 | DevOps Tutorial | Edureka
DevOps Interview Questions and Answers 2019 | DevOps Tutorial | Edureka
 
Jenkins CI presentation
Jenkins CI presentationJenkins CI presentation
Jenkins CI presentation
 
Getting Started with Azure Artifacts
Getting Started with Azure ArtifactsGetting Started with Azure Artifacts
Getting Started with Azure Artifacts
 
Solr Exchange: Introduction to SolrCloud
Solr Exchange: Introduction to SolrCloudSolr Exchange: Introduction to SolrCloud
Solr Exchange: Introduction to SolrCloud
 
Power of Azure Devops
Power of Azure DevopsPower of Azure Devops
Power of Azure Devops
 
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | EdurekaWhat is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
 
An Introduction To Jenkins
An Introduction To JenkinsAn Introduction To Jenkins
An Introduction To Jenkins
 
Jenkins
JenkinsJenkins
Jenkins
 
Jenkins Overview
Jenkins OverviewJenkins Overview
Jenkins Overview
 
Repository Management with JFrog Artifactory
Repository Management with JFrog ArtifactoryRepository Management with JFrog Artifactory
Repository Management with JFrog Artifactory
 
Apache Kafka 0.8 basic training - Verisign
Apache Kafka 0.8 basic training - VerisignApache Kafka 0.8 basic training - Verisign
Apache Kafka 0.8 basic training - Verisign
 
Control-with-Ansible-Tower
Control-with-Ansible-TowerControl-with-Ansible-Tower
Control-with-Ansible-Tower
 
Azure DevOps Presentation
Azure DevOps PresentationAzure DevOps Presentation
Azure DevOps Presentation
 
KCD Italy 2022 - Application driven infrastructure with Crossplane
KCD Italy 2022 - Application driven infrastructure with CrossplaneKCD Italy 2022 - Application driven infrastructure with Crossplane
KCD Italy 2022 - Application driven infrastructure with Crossplane
 
Patrones de creación
Patrones de creaciónPatrones de creación
Patrones de creación
 
Jenkins tutorial
Jenkins tutorialJenkins tutorial
Jenkins tutorial
 
Kubernetes Networking | Kubernetes Services, Pods & Ingress Networks | Kubern...
Kubernetes Networking | Kubernetes Services, Pods & Ingress Networks | Kubern...Kubernetes Networking | Kubernetes Services, Pods & Ingress Networks | Kubern...
Kubernetes Networking | Kubernetes Services, Pods & Ingress Networks | Kubern...
 
DevOps Introduction
DevOps IntroductionDevOps Introduction
DevOps Introduction
 
Azure Web Apps - Introduction
Azure Web Apps - IntroductionAzure Web Apps - Introduction
Azure Web Apps - Introduction
 
[JAZUG Tohoku Azure DevOps] Azure DevOps
[JAZUG Tohoku Azure DevOps] Azure DevOps[JAZUG Tohoku Azure DevOps] Azure DevOps
[JAZUG Tohoku Azure DevOps] Azure DevOps
 

Andere mochten auch

Redes Neuronales Aritificiales Reconocimiento de Imágenes con
Redes Neuronales Aritificiales Reconocimiento de Imágenes conRedes Neuronales Aritificiales Reconocimiento de Imágenes con
Redes Neuronales Aritificiales Reconocimiento de Imágenes conVICTOR VIERA BALANTA
 
CWI Ventures--Equity Marketing
CWI Ventures--Equity MarketingCWI Ventures--Equity Marketing
CWI Ventures--Equity MarketingCWI Ventures
 
Syllabus - Jour 436 (Spring 2014)
Syllabus - Jour 436 (Spring 2014)Syllabus - Jour 436 (Spring 2014)
Syllabus - Jour 436 (Spring 2014)Scott Lindenberg
 
Perla jennifer mendoza martinez autobiografia
Perla jennifer mendoza martinez autobiografiaPerla jennifer mendoza martinez autobiografia
Perla jennifer mendoza martinez autobiografiamendozaperla
 
SSI-Signals-of-Change-March-2015-Digital-Final (1)
SSI-Signals-of-Change-March-2015-Digital-Final (1)SSI-Signals-of-Change-March-2015-Digital-Final (1)
SSI-Signals-of-Change-March-2015-Digital-Final (1)Franck Violette
 
Direccionmzo2008hjg C
Direccionmzo2008hjg CDireccionmzo2008hjg C
Direccionmzo2008hjg Cakyga
 
Bitácoras: Una imprenta para todos
Bitácoras: Una imprenta para todosBitácoras: Una imprenta para todos
Bitácoras: Una imprenta para todosVíctor R. Ruiz
 
Neue Medien für Non-Profit-Organisationen effizient einsetzen
Neue Medien für Non-Profit-Organisationen effizient einsetzenNeue Medien für Non-Profit-Organisationen effizient einsetzen
Neue Medien für Non-Profit-Organisationen effizient einsetzenMySign AG
 
Air Transport Market Potential: US-Africa Air Transportation Summit, Miami, ...
Air Transport Market Potential:  US-Africa Air Transportation Summit, Miami, ...Air Transport Market Potential:  US-Africa Air Transportation Summit, Miami, ...
Air Transport Market Potential: US-Africa Air Transportation Summit, Miami, ...markdiamondgtv6
 
2000rocas zonas de falla dyna
2000rocas zonas de falla dyna2000rocas zonas de falla dyna
2000rocas zonas de falla dynaJairo Figueredo
 

Andere mochten auch (20)

Redes Neuronales con Android
Redes Neuronales con AndroidRedes Neuronales con Android
Redes Neuronales con Android
 
Redes Neuronales Aritificiales Reconocimiento de Imágenes con
Redes Neuronales Aritificiales Reconocimiento de Imágenes conRedes Neuronales Aritificiales Reconocimiento de Imágenes con
Redes Neuronales Aritificiales Reconocimiento de Imágenes con
 
C6 java beans v2
C6  java beans v2C6  java beans v2
C6 java beans v2
 
CWI Ventures--Equity Marketing
CWI Ventures--Equity MarketingCWI Ventures--Equity Marketing
CWI Ventures--Equity Marketing
 
Syllabus - Jour 436 (Spring 2014)
Syllabus - Jour 436 (Spring 2014)Syllabus - Jour 436 (Spring 2014)
Syllabus - Jour 436 (Spring 2014)
 
Di 0713-e
Di 0713-eDi 0713-e
Di 0713-e
 
Ux testing in libraries
Ux testing in librariesUx testing in libraries
Ux testing in libraries
 
Perla jennifer mendoza martinez autobiografia
Perla jennifer mendoza martinez autobiografiaPerla jennifer mendoza martinez autobiografia
Perla jennifer mendoza martinez autobiografia
 
SSI-Signals-of-Change-March-2015-Digital-Final (1)
SSI-Signals-of-Change-March-2015-Digital-Final (1)SSI-Signals-of-Change-March-2015-Digital-Final (1)
SSI-Signals-of-Change-March-2015-Digital-Final (1)
 
Portfolio
PortfolioPortfolio
Portfolio
 
Direccionmzo2008hjg C
Direccionmzo2008hjg CDireccionmzo2008hjg C
Direccionmzo2008hjg C
 
Drupoid
DrupoidDrupoid
Drupoid
 
Desarrollo del pensamiento
Desarrollo del pensamientoDesarrollo del pensamiento
Desarrollo del pensamiento
 
Bitácoras: Una imprenta para todos
Bitácoras: Una imprenta para todosBitácoras: Una imprenta para todos
Bitácoras: Una imprenta para todos
 
Neue Medien für Non-Profit-Organisationen effizient einsetzen
Neue Medien für Non-Profit-Organisationen effizient einsetzenNeue Medien für Non-Profit-Organisationen effizient einsetzen
Neue Medien für Non-Profit-Organisationen effizient einsetzen
 
Air Transport Market Potential: US-Africa Air Transportation Summit, Miami, ...
Air Transport Market Potential:  US-Africa Air Transportation Summit, Miami, ...Air Transport Market Potential:  US-Africa Air Transportation Summit, Miami, ...
Air Transport Market Potential: US-Africa Air Transportation Summit, Miami, ...
 
Eurosega, tu asesoría fiscal y laboral
Eurosega, tu asesoría fiscal y laboralEurosega, tu asesoría fiscal y laboral
Eurosega, tu asesoría fiscal y laboral
 
Cuidado de animales domésticos
Cuidado de animales domésticosCuidado de animales domésticos
Cuidado de animales domésticos
 
2000rocas zonas de falla dyna
2000rocas zonas de falla dyna2000rocas zonas de falla dyna
2000rocas zonas de falla dyna
 
Tutorial registro engrade
Tutorial registro engradeTutorial registro engrade
Tutorial registro engrade
 

Ähnlich wie Java Speech API overview

Trabajo de java
Trabajo de javaTrabajo de java
Trabajo de javajumper2099
 
Tutorial javafx-primeros-pasos
Tutorial javafx-primeros-pasosTutorial javafx-primeros-pasos
Tutorial javafx-primeros-pasosNorman Enmanuel
 
Jvm y variables de entorno
Jvm y variables de entornoJvm y variables de entorno
Jvm y variables de entornoSabinaChambi
 
Webminar: Java como una plataforma Poliglota
Webminar: Java como una plataforma PoliglotaWebminar: Java como una plataforma Poliglota
Webminar: Java como una plataforma PoliglotaDomingo Suarez Torres
 
TABLA DE COMANDO /SENTENCIAS/PAQUETES
TABLA DE COMANDO /SENTENCIAS/PAQUETESTABLA DE COMANDO /SENTENCIAS/PAQUETES
TABLA DE COMANDO /SENTENCIAS/PAQUETESChistian Hernandez
 
investigación de Comandos, Sentencias y/o Paquetes del Lenguaje de Programaci...
investigación de Comandos, Sentencias y/o Paquetes del Lenguaje de Programaci...investigación de Comandos, Sentencias y/o Paquetes del Lenguaje de Programaci...
investigación de Comandos, Sentencias y/o Paquetes del Lenguaje de Programaci...Arazelii Puentez
 
Herramientas case[procesamiento de lenguaje analisis de p
Herramientas case[procesamiento de lenguaje   analisis de pHerramientas case[procesamiento de lenguaje   analisis de p
Herramientas case[procesamiento de lenguaje analisis de pManuel Villalta
 
Tutorial de eclipse 2
Tutorial de eclipse 2Tutorial de eclipse 2
Tutorial de eclipse 2ivan ramirez
 
Java gabriela miralda
Java gabriela miraldaJava gabriela miralda
Java gabriela miraldaGabrielaM05
 
Scripting Integration en Java 6 - Daniel E. Jaramillo
Scripting Integration en Java 6 - Daniel E. JaramilloScripting Integration en Java 6 - Daniel E. Jaramillo
Scripting Integration en Java 6 - Daniel E. Jaramillo2008PA2Info3
 
Introducción a Java
Introducción a JavaIntroducción a Java
Introducción a JavaLuis Rueda
 
[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma JavaEudris Cabrera
 

Ähnlich wie Java Speech API overview (20)

Trabajo de java
Trabajo de javaTrabajo de java
Trabajo de java
 
Java basico
Java basicoJava basico
Java basico
 
Tutorial javafx-primeros-pasos
Tutorial javafx-primeros-pasosTutorial javafx-primeros-pasos
Tutorial javafx-primeros-pasos
 
Jvm y variables de entorno
Jvm y variables de entornoJvm y variables de entorno
Jvm y variables de entorno
 
JAVA
JAVAJAVA
JAVA
 
Tecnologia Java
Tecnologia JavaTecnologia Java
Tecnologia Java
 
Webminar: Java como una plataforma Poliglota
Webminar: Java como una plataforma PoliglotaWebminar: Java como una plataforma Poliglota
Webminar: Java como una plataforma Poliglota
 
Java poliglota
Java poliglotaJava poliglota
Java poliglota
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Comandos
ComandosComandos
Comandos
 
TABLA DE COMANDO /SENTENCIAS/PAQUETES
TABLA DE COMANDO /SENTENCIAS/PAQUETESTABLA DE COMANDO /SENTENCIAS/PAQUETES
TABLA DE COMANDO /SENTENCIAS/PAQUETES
 
investigación de Comandos, Sentencias y/o Paquetes del Lenguaje de Programaci...
investigación de Comandos, Sentencias y/o Paquetes del Lenguaje de Programaci...investigación de Comandos, Sentencias y/o Paquetes del Lenguaje de Programaci...
investigación de Comandos, Sentencias y/o Paquetes del Lenguaje de Programaci...
 
Herramientas case[procesamiento de lenguaje analisis de p
Herramientas case[procesamiento de lenguaje   analisis de pHerramientas case[procesamiento de lenguaje   analisis de p
Herramientas case[procesamiento de lenguaje analisis de p
 
Tutorial de eclipse 2
Tutorial de eclipse 2Tutorial de eclipse 2
Tutorial de eclipse 2
 
Java gabriela miralda
Java gabriela miraldaJava gabriela miralda
Java gabriela miralda
 
Scripting Integration en Java 6 - Daniel E. Jaramillo
Scripting Integration en Java 6 - Daniel E. JaramilloScripting Integration en Java 6 - Daniel E. Jaramillo
Scripting Integration en Java 6 - Daniel E. Jaramillo
 
Lenguaje de programacion java
Lenguaje de programacion javaLenguaje de programacion java
Lenguaje de programacion java
 
Introduccion Java
Introduccion JavaIntroduccion Java
Introduccion Java
 
Introducción a Java
Introducción a JavaIntroducción a Java
Introducción a Java
 
[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java[ES] Primeros pasos con la Plataforma Java
[ES] Primeros pasos con la Plataforma Java
 

Kürzlich hochgeladen

TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicaGianninaValeskaContr
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxMartín Ramírez
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Angélica Soledad Vega Ramírez
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfDaniel Ángel Corral de la Mata, Ph.D.
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdfOswaldoGonzalezCruz
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadJonathanCovena1
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptAlberto Rubio
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxJUANSIMONPACHIN
 
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxPROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxEribertoPerezRamirez
 

Kürzlich hochgeladen (20)

TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
DIA INTERNACIONAL DAS FLORESTAS .
DIA INTERNACIONAL DAS FLORESTAS         .DIA INTERNACIONAL DAS FLORESTAS         .
DIA INTERNACIONAL DAS FLORESTAS .
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básica
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
La luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luzLa luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luz
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la Sostenibilidad
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
 
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxPROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
 

Java Speech API overview

  • 1. Java Speech API de Java  JSAPI
  • 2. Here comes your footer  Page 2 Java Speech API  La API de Java Speech (JSAPI) es una extensión de la plataforma Java.  Las extensiones son paquetes de clases escritos en lenguaje de programación java (u otro código nativo asociado) que los desarrolladores de aplicaciones pueden utilizar para extender la funcionalidad de la plataforma Java. Concepto
  • 3. Here comes your footer  Page 3 Java Speech API  Java Speech API 1.0 fue lanzado por primera vez por Sun en 1998 y define los paquetes tanto para el Reconocimiento de Voz y Síntesis de Voz.  Todas las implementaciones JSAPI disponibles en la actualidad son compatible con 1.0 y se continua trabajando con la version 2.0 Historia
  • 4. Here comes your footer  Page 4 Java Speech API  Proveer soporte para sintetizadores de voz y para sistemas de reconocimiento de habla (tanto aquellos de Control por Comandos como los de Dictado).  Ser simple, compacto y fácil de aprender.  Permitir el acceso al estado del arte de la tecnología del habla. Obejtivos de Diseño
  • 5. Here comes your footer  Page 5 Java Speech API  Soportar la integración con otras capacidades de la plataforma Java, como por ejemplo la API de Java Media.  Proveer una interfaz multiplataforma y multiproveedor robusta para la síntesis y reconocimiento del habla, permitiendo a los desarrolladores escribir aplicaciones que no dependen de las características propias de una plataforma o de un motor de voz. Obejtivos de Diseño
  • 6. Here comes your footer  Page 6 Java Speech API  Mediante la utilización de la Interfaz Nativa Java (JNI) y las envolturas de SW Java (Java SW wrappers) es posible implementar la API de Java Speech en el nivel superior del SW de habla existente. Implementaciones Implementaciones Nativas
  • 7. Here comes your footer  Page 7 Java Speech API  Los sintetizadores y reconocedores de habla pueden ser escritos en Java.  Estas implementaciones tienen el beneficio de la portabilidad y de las mejoras continuas en la velocidad de ejecución de las máquinas virtuales Java. Implementaciones Implementaciones Java
  • 8. Here comes your footer  Page 8 Java Speech API  Estas aplicaciones se implementan generalmente sobre HW dedicado capaz de soportar un gran número de conexiones simultáneas.  Las capacidades de reconocimiento y síntesis de habla en este HW puede ser envuelto con software Java para soportar la JSAPI como un tipo especial de implementación nativa. Implementaciones Implementaciones Telefonicas
  • 9. Here comes your footer  Page 9 Java Speech API Para utilizar JSAPI se debe contar con requerimientos mínimos de HW y SW. Los requerimientos individuales de los sintetizadores y reconocedores de habla varían mucho entre uno y otro, por lo que el usuario deberá analizarlos cuidadosamente al momento de elegir. Requerimientos  Software de habla: se debe disponer de un sintetizador o reconocedor de habla compatible con JSAPI
  • 10. Here comes your footer  Page 10 Java Speech API Requerimientos  Requerimientos del sistema: es necesario controlar los requerimientos mínimos de memoria, CPU y espacio en disco al momento de adquirir un producto de habla.  HW de audio: los sintetizadores de habla requieren salida de audio, en tanto que los reconocedores requieren micrófonos. Los sistemas de dictado requieren placas de sonido de buena calidad para funcionar de manera óptima.
  • 11. Here comes your footer  Page 11 Motores del Habla
  • 12. Here comes your footer  Page 12 Motores del Habla Concepto  El paquete javax.speech de la JSAPI define una representación abstracta por SW.  Se denomina motor de habla al sistema diseñado para tratar con las entradas o salidas de habla.  Los sintetizadores y reconocedores de habla son instancias del motor de habla.  Los sistemas de verificación del hablante y los de identificación del hablante también son motores de habla, aunque no son soportados por la JSAPI.
  • 13. Here comes your footer  Page 13 Motores del Habla Concepto  Este paquete define clases e interfaces que definen la funcionalidad básica del motor.  Los paquetes javax.speech.synthesis y javax.speech.recognition extienden y aumentan la funcionalidad básica para definir las capacidades específicas de los sintetizadores y reconocedores de habla.
  • 14. Here comes your footer  Page 14 Motores del Habla  Los pasos básicos para utilizar un motor de habla en una aplicación son: 1. Identificar los requerimientos funcionales de la aplicación 2. Localizar y crear un motor que cubra esos requerimientos 3. Asignar los recursos necesarios para el motor 4. Configurar el motor 5. Comenzar la operación del motor 6. Usar el motor 7. Desasignar los recursos del motor. * Los pasos 4 a 6 son diferentes según se trate de motores de reconocimiento o síntesis de habla. Los demás pasos son iguales para ambos tipos. 
  • 15. Here comes your footer  Page 15 Motores del Habla Propiedades A continuación se listan las propiedades básicas de los motores de habla: Propiedades básicas de selección de motor: EngineModeDesc Propiedad Descripción EngineName Es una cadena que define el nombre del motor de habla, por ejemplo “Málaga Dictation System”. ModeName Es una cadena que define un modo específico de operación, por ejemplo “Málaga Spanish dictador”. Locale Un objeto java.util.Locale que indica el idioma soportado por el motor y, opcionalmente, alguna variante (como podría ser inglés británico o inglés estadounidense). La clase Locale usa los códigos ISO 639 para idioma y 3166 para país. Por ejemplo: Locale("fr", "ca") representa el idioma francés canadiense en tanto que Locale("en", "") representa el idioma inglés. Running Es un objeto booleano cuyo valor es TRUE si el motor está corriendo en la plataforma y FALSO si no es así. La selección de un motor que está corriendo permite compartir recursos y ayuda a acelerar la creación del objeto motor de habla.
  • 16. Here comes your footer  Page 16 Motores del Habla Propiedades A continuación se listan las propiedades básicas de los motores de habla: Propiedades de selección del Sintetizador: SynthesizerModeDesc Propiedad Descripción List ofvoices Es un arreglo de voces que el sintetizador puede producir. Cada voz es definida por una instancia de la clase Voice que encapsula el nombre de la voz, el género, la edad y el estilo.
  • 17. Here comes your footer  Page 17 Motores del Habla Propiedades A continuación se listan las propiedades básicas de los motores de habla: Propiedades de selección del Reconocedor: RecognizerModeDesc Propiedad Descripción Dictationsupported Es un valor booleano que indica si este modo de operación del reconocedor soporta una gramática de dictado. Speaker profiles Es una lista de objetos de Speakerprofile para usuarios que entrenaron al reconocedor. Los reconocedores que no soportan entrenamiento retornan una lista nula.
  • 18. Here comes your footer  Page 18 Motores del Habla • La forma más fácil de crear un motor de habla es requerir el motor por defecto. • Esto es adecuado cuando la aplicación requiere un motor para el idioma local y no tiene requerimientos funcionales específicos. • La clase Central en el paquetejavax.speech.package se usa para localizar y crear motores. • La creación de un motor por defecto usa dos métodos estáticos de la clase Central: Synthesizer Central.createSynthesizer(EngineModeDesc mode); Recognizer Central.createRecognizer(EngineModeDesc mode);
  • 19. Here comes your footer  Page 19 Motores del Habla El siguiente código permite crear un reconocedor y sintetizador por defecto: import javax.speech.*; import javax.speech.synthesis.*; import javax.speech.recognition.*; { // Get a synthesizer for the default locale Synthesizer synth = Central.createSynthesizer(null); // Get a recognizer for the default locale Recognizer rec = Central.createRecognizer(null);}
  • 20. Here comes your footer  Page 20 Motores del Habla A continuación se presenta un ejemplo que muestra un método para crear un reconocedor de dictado para el locale por defecto: /** Get a dictation recognizer for the default locale */ Recognizer createDictationRecognizer() { // Create a mode descriptor with all required features RecognizerModeDesc required = new RecognizerModeDesc(); required.setDictationGrammarSupported(Boolean.TRUE); return Central.createRecognizer(required); }
  • 21. Here comes your footer  Page 21 Motores del Habla Eventos de Habla Los eventos de JSAPI siguen el modelo de eventos de JavaBeans. Los eventos son emitidos hacia un “oyente” adjunto al objeto involucrado en la generación del evento. Todos los eventos de habla se derivan de la clase SpeechEvent del paquete javax.speech. Eventos de habla: paquete javax.speech Nombre Descripción SpeechEvent Clase padre de todos los eventos de habla. EngineEvent Señala un cambio en el estado del motor de habla. AudioEvent Señala un evento de entrada o salida de audio. EngineErrorEvent Es una sub clase que señala la ocurrencia de un problema asincrónico en el motor.
  • 22. Here comes your footer  Page 22 Motores del Habla Eventos de Habla Eventos de habla: paquete javax.speech.synthesis Nombre Descripción SynthesizerEvent Extiende EngineEvent para eventos especializados de un sintetizador. SpeakableEvent Señala el progreso en la salida de texto sintetizado. Eventos de habla: paquete javax.speech.recognition Nombre Descripción RecognizerEvent Extiende EngineEvent para eventos especializados de un reconocedor. GrammarEvent Señala una actualización o un cambio de estado de la gramática de reconocimiento. ResultEvent Señala cambios de estado y de datos de los resultados del reconocimiento RecognizerAudioEvent Extiende AudioEvent con eventos para iniciar y parar el habla y la actualización de niveles de audio.
  • 23. Here comes your footer  Page 23 JSAPI Docs
  • 24. Here comes your footer  Page 24 Java Speech API Paquete javax.speech Resumen Interface AudioListener La interfaz de escucha para recibir eventos asociados con la entrada de audio o de salida de un motor. AudioManager El AudioManager es proporcionado por un motor de voz - un reconocedor o Sintetizador - para permitir que una aplicación de control de entrada / salida de audio y para supervisar los eventos relacionados con el audio EngineCentral Proporciona una lista de objetos EngineModeDesc que definen los modos de funcionamiento disponibles de un motor de voz EngineCreate La interfaz EngineCreate se implementa objetos EngineModeDesc obtenidos a través de las llamadas a los objetos EngineCentral de cada motor de voz registrada en la clase Central. Engine La interfaz del motor es la interfaz principal para todos los motores de voz, incluyendo el reconocedor y sintetizador. EngineListener Métodos de definición de interfaz que se llamará cuando se producen eventos de cambio de estado de un motor de voz EngineProperties Un objeto EngineProperties define el conjunto de propiedades de tiempo de ejecución de un motor. VocabManager Interfaz para la gestión de las palabras que utiliza un motor de voz
  • 25. Here comes your footer  Page 25 Java Speech API Paquete javax.speech Resumen Class AudioAdapter Una aplicación trivial de la interfaz AudioListener que recibe eventos de audio de un motor AudioEvent Describe eventos asociados con la entrada / salida de audio para un motor. Central La clase central es el punto de acceso inicial a todas las entradas de voz y capacidades de salida EngineAdapter Aplicación Trivial de la interfaz EngineListener que recibe un EngineEvents. EngineErrorEvent EngineErrorEvent es una notificación asíncrona de un error interno en el motor que evita el comportamiento normal de ese motor. EngineEvent EngineEvent notifica cambios en el estado de un sintetizador de voz o el motor de reconocimiento EngineList EngineList es un contenedor para un conjunto de objetos EngineModeDesc.. EngineModeDesc EngineModeDesc proporciona información acerca de un modo de funcionamiento específico de un motor de voz. SpeechEvent La clase de evento raíz para todos los eventos de habla. SpeechPermission Esta clase representa los permisos del habla. Word La clase Word proporciona una representación estándar de palabras decible para motores de voz.
  • 26. Here comes your footer  Page 26 Java Speech API Paquete javax.speech Resumen Exception AudioException Se encontró un problema de conexión de audio a / desde un motor de voz. EngineException Las señales que se produjo un error al intentar crear o acceder a un motor de síntesis de voz, el motor de reconocimiento de voz u objeto EngineCentral SpeechException Señales de que se ha producido una excepción de Java Speech API. VendorDataException Las señales de que un problema se ha encontrado cargar o guardar algún tipo de datos específicos del proveedor
  • 27. Here comes your footer  Page 27 Java Speech API Paquete javax.speech Resumen Error EngineStateError Señala un error causado por una llamada a un método ilegal de un motor de voz. SpeechError Indica que se ha producido un error en el paquete javax.speech
  • 28. Here comes your footer  Page 28 Java Speech API Paquete javax.speech.recognition Resumen Interface DictationGrammar Proporciona acceso a las capacidades de dictado de un reconocedor. FinalDictationResult Proporciona información sobre el resultado finalizado una expresión que coincide con un DictationGrammar. FinalResult FinalResult es una extensión de la interfaz de resultado que proporciona información sobre un resultado que haya sido finalizado - es decir, el reconocimiento es completa. FinalRuleResult Proporciona información sobre el resultado finalizado una expresión que coincide con un RuleGrammar Grammar Interfaz de Padres con el apoyo de todas las gramáticas de reconocimiento incluyendo DictationGrammar y RuleGrammar. GrammarListener A GrammarListener recibe notificaciones de eventos de cambio de estado de una gramática.. RecognizerAudioListener Se extiende el conjunto de eventos de audio de un motor para un reconocedor añadiendo un evento de nivel de audio. Recognizer Un reconocedor proporciona acceso a las capacidades de reconocimiento de voz.
  • 29. Here comes your footer  Page 29 Java Speech API Paquete javax.speech.recognition RecognizerListener Define una extensión de la interfaz EngineListener para eventos específicos asociados con un reconocedor. RecognizerProperties Permite el control de las propiedades de un reconocedor Result Un resultado se emite por un reconocedor ya que reconoce una expresión de entrada que coincide con una gramática activa. ResultListener Los métodos de un ResultListener recibir notificaciones de los eventos relacionados con un objeto de resultado. ResultToken Una muestra (generalmente una palabra) contenida por un resultado que representa algo oído por un reconocedor. RuleGrammar Interfaz RuleGrammar describe una gramática que define lo que los usuarios pueden decir por un conjunto de reglas. SpeakerManager Proporciona el control de SpeakerProfiles un reconocedor.
  • 30. Here comes your footer  Page 30 Java Speech API Paquete javax.speech.recognition Resumen Class GrammarAdapter El adaptador que recibe eventos de gramática.. GrammarEvent A GrammarEvent se emite a cada GrammarListener unido a una gramática cuando se producen grandes acontecimientos relacionados con la gramática GrammarSyntaxDetail Descripción de un problema que se encuentra en una gramática general, vinculado con un GrammarException RecognizerAdapter El adaptador que recibe eventos de un reconocedor. RecognizerAudioAdapter Adaptador para una serie de eventos de audio de un reconocedor RecognizerAudioEvent RecognizerAudioEvent Evento emitido para indicar la detección de la voz en el flujo de audio entrante o para indicar periódicamente el nivel de entrada de audio. RecognizerEvent Evento publicado por aprendidos a través RecognizerListener. RecognizerModeDesc RecognizerModeDesc se extiende la EngineModeDesc con propiedades que son específicas de los reconocedores de voz ResultAdapter El adaptador que recibe eventos de un objeto de resultado.
  • 31. Here comes your footer  Page 31 Java Speech API Paquete javax.speech.recognition ResultEvent A ResultEvent es emitida por un objeto de resultado para indicar cambios en las fichas y los movimientos registrados en el estado. RuleAlternatives RuleAlternatives representa una regla compuesta de un conjunto de sub-reglas alternativa. RuleCount Se fija un recuento a un objeto de regla contenida para indicar el número de veces que puede ocurrir. Rule Un objeto de regla es el componente básico de una RuleGrammar y representa todo lo que puede aparecer en el lado derecho de una definición de la regla en Java Formato gramática del habla. RuleName Un RuleName es una referencia a una regla llamada RuleParse Representa la salida de un análisis sintáctico de un resultado o una cadena contra un RuleGrammar RuleSequence RuleSequence es una regla compuesta de una secuencia de sub-reglas que deben ser cada uno habla en orden. RuleTag RuleTag adjunta una etiqueta a un objeto de regla contenida RuleToken RuleToken representa texto decible en un RuleGrammar. SpeakerProfile Un objeto SpeakerProfile se utiliza para identificar cada inscripción por un usuario a un reconocedor..
  • 32. Here comes your footer  Page 32 Java Speech API Paquete javax.speech.synthesis Resumen Interface Speakable Un objeto que implementa la interfaz Speakable se puede proporcionar para el método de hablar de un sintetizador para ser hablado. SpeakableListener La interfaz de escucha para recibir notificaciones de los eventos durante la salida hablada de un Speakable. Synthesizer La interfaz del sintetizador proporciona acceso primario a las capacidades de síntesis de voz. SynthesizerListener Una extensión a la interfaz EngineListener para la recepción de la notificación de eventos asociados con un sintetizador. SynthesizerProperties Proporciona el control de las propiedades de tiempo de ejecución de un sintetizador
  • 33. Here comes your footer  Page 33 Java Speech API Paquete javax.speech.synthesis Resumen Class SpeakableAdapter Adaptador que recibe eventos asociados a la producción hablada de un objeto Speakable. SpeakableEvent Evento emitido durante la producción hablada de texto SynthesizerAdapter Adaptador que recibe eventos asociados con un Sinthetizer. SynthesizerEvent Evento emitido por Sintetizador para indicar un cambio de estado o de otra actividad. SynthesizerModeDesc SynthesizerModeDesc se extiende la EngineModeDesc con propiedades que son específicas a sintetizadores de voz SynthesizerQueueItem Representa un objeto en la cola de salida de voz de un Synthetizer. Voice Una descripción de una voz de salida de un sintetizador de voz.
  • 34. Here comes your footer  Page 34 Java Speech API Paquete javax.speech.synthesis Exception Resumen JSMLException Lanzado si un problema de sintaxis se encuentra con el texto en el marcado con la voz de lenguaje de marcado de Java.
  • 35. Here comes your footer  Page 35 Bibliografia • http://www.oracle.com/technetwork/java/jsapifaq-135248.html • http://docs.oracle.com/cd/E17802_01/products/products/java- media/speech/forDevelopers/jsapi-doc/ • http://www.sicuma.uma.es/sicuma/independientes/argentina08/Liliana/JSAPI.htm • http://en.wikipedia.org/wiki/Java_Speech_API • http://cafelojano.wordpress.com/2007/08/13/texto-a-voz-en-java-texto-to-speech/ • http://sourceforge.net/projects/jsapi/
  • 36. Here comes your footer  Page 36 FIN