KTTS/Speech Dispatcher Integration
TTS Engine API This node represents a not yet fully specified API, which is being developed by the accessibility group of freedesktop.org. It is intended to provide a single API for all synth authors to implement. It is unclear how much functionality this component has versus Speech Dispatcher. It also should not be assumed this represents a separate process. It could be a shared library linked into each synth, or into Speech Dispatcher.Olaf Schmidt will have more to say about this in his talk tomorrow.Synths Currently, Speech Dispatcher supports Festival, Flite, and generic Command synthesizers but the plan would be to add support for Epos, Hadifix (mbrola and txt2pho) and possibly Cepstral, IBM ViaVoice, and DECTalk.FestivalFliteCommandEposHadifixCepstral questionmarkIBM ViaVoice questionmarkDECTalk questionmarkAudio OutputNASALSAKDEMMGNOME Apps lamp I hesitated to add GNOME Apps to this diagram. GNOME has its own speech module (GNOME Speech API), but perhaps they would consider switching to the Speech Dispatcher backend for the same reasons I recommend KDE use it?AT SPI This part of the diagram is probably drawn incorrectly. One of my personal goals at aKademy 2005 is to better understand the architecture here. *. Will KDE adapt Gnopernicus, or will we develop our own screen reader? *. How does the AT SPI integrate with Qt4?Qt/KDE 4KDE Screen Reader smiley-good Here is a huge opportunity to get involved in KDE accessibility development. But whatever we do, one thing is certain. We will need a robust and reliable Text-to-Speech component. KTTS is one possibility, but I recommend we use Speech Dispatcher instead and modify both KTTS and Speech Dispatcher so that KTTSD can use Speech Dispatcher as its speech backend.Gnopernicus questionmarkKTTSD Changes to Speech Dispatcher:Additional message type (long text) which is not discarded.Start/End Sentence/Job feedback.Job Control, including advance/rewind, pause, later.Changes to KTTS:KTTSMgr becomes GUI for configuring and controlling SD and KTTSD.Replace/map Talkers to SD Synths.SBD, sox, Audio Plugins eliminated. Also, KTTSD queing and prioritization elminated.KDE AppsKNotifyFilter PluginsDBUS notifications lampConsole Apps (boot)

Why replace KTTSD backend with Speech Dispatcher?

SD designed with Screen Readers in mind. Low latency. Richer Screen Reader api model. Proven functionality for Screen Readers.

Single TTS backend. Less duplication of effort.

Single TTS backend means easier for users to install and understand.

TTS support from near boot-up to shutdown. Not dependent upon a desktop platform. Supports console apps.

Single TTS audio stream. Less app collision.