speech-dispatcher-cs: Motivace

 
 1.1 Motivace
 ============
 
 Projekt Speech Dispatcher se snaží poskytnout na zařízení nezávislou
 vrstvu pro řečovou syntézu.  Měl by poskytovat jednoduché rozhraní pro
 klientské aplikace (aplikace, které chtějí mluvit), stejně jako pro
 ovladače konkrétních zařízení (různé řečové syntetizéry).
 
    Vysoce kvalitní řečová syntéza je tu již dlouho a nyní je použitelná
 i pro běžné uživatele na jejich domácích počítačích.  Občas to přichází
 jako nutnost, občas je to jen dobrá vlastnost, aby některé programy
 poskytovaly řečový výstup.  Pro syntézu hlasu je tu široké pole využití
 od výukového software až po specializované systémy, jako jsou například
 nemocnice či laboratoře.  Pro zrakově postižené uživatele je to jedna ze
 dvou základních cest, jak získat výstup z počítače (tou druhou je
 Braillský řádek).
 
    Existují různé řečové syntetizéry s různými schopnostmi.  Některé z
 nich jsou hardwarové, některé softwarové.  Některé jsou svobodným
 software a jsou volně dostupné na internetu.  Programátoři to mají
 opravdu těžké, když chtějí své programy rozmluvit, protože potřebují
 nejprve najít nějaký vhodný syntetizér (dlouhé hodiny experimentování a
 tak dále) a potom jej potřebují nějak zprovoznit s jejich programem.
 Často musí psát pro tyto programy či hardwarová zařízení vlastní
 ovladače a dělají to znovu a znovu.  Snadno si lze představit, že se to
 celé zhroutí když nevinný uživatel spustí dva programy najednou.  Kdyby
 přesto nastartovaly oba, budou křičet jeden přes druhého.
 
    Tím je pro programátory velmi obtížné implementovat do svých programů
 podporu řečové syntézy (pro nevidomé uživatele, nebo prostě pro lepší
 uživatelské rozhraní) a je to jeden z důvodů, proč pořád ještě plně
 nevyužíváme toho, co řečová syntéza nabízí.
 
    V ideálním světě by programátoři mohli pro řečovou syntézu používat
 podobné příkazy, jako to dělají pro textový výstup na obrazovku (printf,
 puts, ...).  V ideálním světě by existovalo nějaké speech_printf(),
 které by se staralo o to, aby byla zpráva přemluvena ve správný čas bez
 přerušování ostatních.  Programátor by se tak nemusel starat o to, jak
 je přesně komunikace s řečovým syntetizérem implementována.  V ideálním
 světě by byl v každé GNU/Linuxové distribuci nějaký řečový syntetizér a
 nějaké rozhraní starající se o aplikace, které chtějí mluvit, dovolující
 uživatelům nastavit si parametry řeči a poskytující nějaké jednoduché
 rozhraní (jako speech_printf()) pomocí nějaké sdílené knihovny pro
 programátory.  Bude to jěště dlouhá cesta než se nám podaří dosáhnout
 tohoto stavu věcí, ale se Speech Dispatcherem děláme první krůčky...