počítačová syntéza zpěvu
Zodpovědný vývojář: Milan Zamazal <pdm@brailcom.org>
Rychlé odkazy:
Cílem projektu Zpívající počítač je učinit další krok ve zpřístupnění sazby notového zápisu zrakově postiženým uživatelům, a sice umožnit jim kontrolu zpívaného textu. Velmi kvalitním a široce používaným nástrojem pro sazbu not je systém LilyPond, který využívá pro vytváření notového zápisu obyčejný textový vstup (podobným způsobem jako se sází textové dokumenty například v systému TeX). Pro zrakově postižené uživatele tento způsob práce se sázecím programem znamená snadnou a poměrně pohodlnou možnost vytvářet notové zápisy s využitím běžného textového editoru.
Důležitou součástí pořizování notového zápisu je kontrola výsledku. Pro normálně vidícího uživatele tato část práce nepředstavuje žádný problém, snadno zkontroluje výsledný PDF dokument na obrazovce nebo vytištěný na papíře. Zrakově postižený uživatel však tyto možnosti nemá. I kdyby zpřístupňující technologie dokázaly nějakým způsobem popisovat rozmístění not a jim příslušného textu na obrazovce, kontrola prováděná tímto způsobem by byla pro uživatele nesmírně pracná. Zrakově postižení uživatelé jsou tedy nutně odkázáni na jiné prostředky.
Zrakově postižení uživatelé mohou jen s obtížemi pracovat s vizuálními informacemi, zato se jim mnohem snáze pracuje s informacemi ve zvukové podobě. A tomu lze nástroje pro sazbu not přizpůsobit. LilyPond standardně nabízí účinný nástroj pro sluchovou kontrolu zápisu not prostřednictvím MIDI výstupu generovaného ze zdrojového textu notového zápisu. Zrakově postižený uživatel přehráním vygenerovaného MIDI souboru zkontroluje správnost notového zápisu. Nezjistí však už, zda je v pořádku i pod notami umístěný text zpívané části. Tento druh kontroly řeší projekt Zpívající počítač.
Zpívající počítač pro daný notový vstup zapsaný v syntaxi LilyPondu umožňuje text s pomocí systému syntézy řeči Festival nechat počítačem zazpívat. Zrakově postižený uživatel tak získává možnost kontroly textu a jeho správného přiřazení notám. Může mnohem snáze zjišťovat a opravovat chyby vstupního textového zápisu během své práce na sazbě notového dokumentu. Zpřístupnění sazby notového zápisu se tím pro něj stává takřka úplným.
Projekt Zpívající počítač je realizován společností Brailcom, o.p.s. a finančně jej v rámci projektu Světluška podpořil Nadační fond Českého rozhlasu.
Zpívající počítač sestává ze tří základních částí:
První, lilypondová, část je v projektu Zpívající počítač realizována jako nový nezávislý program rozšířující LilyPond o nový příkaz. Uživatel vložením tohoto příkazu do vstupního textového souboru s notovým zápisem zařídí, že LilyPond vygeneruje XML soubor pro Festival. Generování tohoto souboru tedy z hlediska uživatele funguje podobně jako generování MIDI souboru.
Druhá, festivalová, část spočívající v syntéze zpěvu z vygenerovaného XML souboru je realizována s pomocí experimentálního modulu pro zpěv, který je součástí Festivalu. V rámci projektu Zpívající počítač je tento modul upravován a rozšiřován o nové funkce potřebné pro syntézu zpěvu. Tato část projektu je nezávislá na LilyPondu a lze ji tedy případně využít všude, kde může být syntéza zpěvu užitečná. Pro syntézu českého zpěvu se využívá výsledků projektů festival-czech a Česká difonová databáze.
Třetí, emacsová, část umožňuje uživateli spustit zpěv, případně spolu s přehráním hudebního MIDI doprovodu, během editace lilypondového zdrojového souboru přímo z editoru.
Všechny části jsou realizovány jako doplnění LilyPondu a Festivalu bez nutnosti modifikace těchto softwarů. Lze je tedy používat se standardními balíky LilyPondu a Festivalu z kterékoliv běžné softwarové distribuce.
Zdrojové kódy jsou spravovány pomocí systému CVS. K získání aktuální vývojové verze máte následující možnosti:
Anonymní CVS přístup (k zalogování použijte prázdné heslo):
cvs -d :pserver:anonymous@cvs.freebsoft.org:/var/lib/cvs login cvs -d :pserver:anonymous@cvs.freebsoft.org:/var/lib/cvs checkout singing-computer
Pro informace o všech CVS commitech se můžete přihlásit do mailing-listu singing-computer-cvs@lists.freebsoft.org.