Communications and Signal Theory Department, Signal Processing Section

Software

Main Teaching Research Staff Private area

Up

You can also be interested in TRUE (Testing platfoRm for mUltimedia Evaluation). Click here.
  

Festival in a Win32 platform

Author: Xavi Gonzalvo (gonzalvo@salle.url.edu)

 

Festival

Festival TTS is a known multi-lingual framework to develop speech synthesis systems. It was develop in the University of Edinburgh. It uses a number of C++ APIs, Edinburgh Speech Tools Library for low level architecture and a Scheme (SIOD) based command interpreter for control.

Festival Home Page. The Centre for Speech Technology Research

 

Festival Win32

The main objective of this project is to get the last version of Festival TTS libraries (1.9.5) working in a win32 system. The code was originally created for Linux machines and now can also be used in Cygwin enviorenment. Although some background is given to make it works under Visual C++ version 7.1, some changes has to be done in order to make it compiled properly and get the main static libraries from Speech Tools:

bullet

libestbase

bullet

libesttools

bullet

libeststring

and the main library from Festival:

bullet

libFestival

 

Download

By now you can download win32 executables from Festival and compiled static libraries.

Festival console win32 Release executable

Festival console application. There's still a problem with encoding accents.

Festival win32 Debug static libraries

Static libraries to link to a project and their header files.

Voice Catalan (test version)

A new Catalan voice developed for the Festival TTS system. It's a demonstration made from a small corpus.

 Default data used in compilation:

bullet

Base path: C:\festival\festival

bullet

Data path inside base path: C:\festival\festival\lib

bullet

Pre-processor definitions:
bullet

Speech tools libraries

WIN32
_DEBUG
SYSTEM_IS_WIN32=1
INSTANTIATE_TEMPLATES=1
SUPPORT_EDITLINE=1
SUPPORT_MPLAYER=1
CHAR_SIZE=8
ESTLIBDIRC=c:\\festival\\speech_tools\\lib
INCLUDE_XML_FORMATS=1
DATAC=c:\\festival\\speech_tools\\lib

bullet

Festival library

WIN32
_DEBUG
SYSTEM_IS_WIN32=1
INSTANTIATE_TEMPLATES=1
SUPPORT_EDITLINE=1
SYSTEM_LIB=c:\\festival\\festival\\lib
FTLIBDIRC=c:\\festival\\festival\\lib
FTOSTYPEC=win32_vc
FTNAME=$(ProjectName)
FTVERSION=1.9.5
FTSTATE=dev
FTDATE=2006
NO_READLINE=1
NO_SPOOLER=1
SUPPORT_MPLAYER=1
CHAR_SIZE=8
ESTLIBDIRC=c:\\festival\\speech_tools\\lib
INCLUDE_XML_FORMATS=1
DATAC=c:\\festival\\speech_tools\\lib

Test voice

Signal Processing Section under La Salle Engineering works in speech synthesis since the eighties and has developed many projects and corpus in various areas. The following is a little part of one of this corpus adapted to Festival domain and framework. To see other synthesis demonstrations of our own synthesis system, please go to demos section.

The following Catalan voice was developed in La Salle Engineering in 2003 by Jordi Dominguez as a project under the supervision of Francesc Alias. This voice uses LPC synthesizer from Festival and was created from a 20 minutes corpus as a first approach to Festival framework. More work it's been performed to improve quality.

To test this voice just download the zipped file and do the next steps:

1. Unzip it in the lib directory under the Festival base path. Be sure that a new directory has been created under lib/voices/cat. This is the new Catalan voice.

2. Execute Festival console application. It should automatically register this new voice. To test it, use the TAB key writing (voice_ and it should appear the name of the voice: voice_url_cat_jdf_diphone

C:\festival\festival\main_win32\Debug>festival
libFestival 1.9.5:dev 2006
Copyright (C) University of Edinburgh, 1996-2004. All rights reserved.
For details type `(festival_warranty)'
festival> (voice_
voice_kal_diphone voice_url_cat_jdf_diphone
voice_reset
festival> (voice_

3. Once we have loaded the voice, we can synthesize some text. By now, accents in console mode are not accepted and audio player will not be found (originally in Festival the player is called mplayer, now is being changed to wmplayer but it's not found although we set the path to the windows variables). Anyway, the temporary file it's not deleted like in the original Festival. We can directly listen to the file.

festival> (voice_url_cat_jdf_diphone )
festival> (SayText "hola benvingut a la sintesis")
failed to find pronunciation for hola
failed to find pronunciation for benvingut
failed to find pronunciation for la
failed to find pronunciation for sintesis
command 'wmplayer /play C:\DOCUME~1\javi\CONFIG~1\Temp\est2608.wav'
"wmplayer" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
#<Utterance 00AAEF00>
festival>

"failed to find pronunciation" refers to the rules file definition. It indicates that was not possible to find the word in lexicon, so some rules are used. For this test version, no all the rules were package, so it's possible to find some unpronounceable words.

 

  Comments: Santi Planet Garcia & Rosa Maria Alsina Pagès
© Copyright. All rights reserved.
Enginyeria i Arquitectura La Salle - Universitat Ramon Llull
Last modified:  31/7/2006