Design Considerations
Fitting Speech onto the Java ME Platform
- Speech Recognition
- Name and number dialing
- Built-in grammars (device specific)
- Application defined grammars
- Speech Synthesis
- Formant synthesis
- Concatenative synthesis
- Does not include
- Explicit dictation support
- Speaker Verification
- Speaker Identification
Basic Building Blocks for Java SE Compatibility
- Add almost nothing for SE compatibility
- Language selection is important
- Locale – 8 methods for language, country, and variant
- The API is event driven
- EventListener – a simple tagging interface
- EventObject – constructor, getSource, toString
- Speech engines have many knobs
- PropertyChangeListener – one method interface
- PropertyChangeEvent – three methods
Adopting Standards From the W3C

Integrating Speech and GUI Events
- JSAPI1 relied on AWT – no Applets :(
- SpeechEventExecutor interface for JSAPI2
Defining Audio Input and Output with an AudioManager
Security
- Security mechanisms provided by the underlying profile and configuration (e.g., MIDP2)
- An implementation must guarantee that
- SecurityException is thrown when the caller does not have the appropriate security permissions
- The method can be used when the appropriate permissions are granted
- System properties determine permission
- Method: javax.speech.AudioSegment.getInputStream
- Key: javax.speech.supports.audio.capture
For More Information Check Out: