[PD] [OT] Voice Synth

patrice colet megalegoland at yahoo.fr
Fri Jun 8 17:21:48 CEST 2007


Hello

Le dimanche 03 juin 2007 à 00:40 +0200, Bryan Jurish a écrit :

> It's allegedly possible to compile a flite library for any festival
> language-model built with the festvox tools (note: this does not include
> German: AFAIK the only festival support for German is from IMS
> Stuttgart, they've stopped supporting it, and I personally have never
> gotten it to compile, even after much wailing, gnashing of teeth, etc.)
> 
> I'm not sure how well the pd flite interface actually supports multiple
> languages -- I've only ever tested it with the default english models.
> It should be pretty straightforward to compile & link it against an
> alternate flite library though.  If anyone succeeds, I'm happy to
> discuss how to go about generalizing the build procedure.
> 
> marmosets,
> 	Bryan
> 
 thank for making pd speak, I've successfully compiled [flite] for amd64
on ubuntu feisty, but i had to hack the configure file,
the -fPIC flag was missing, so I've added this one at line 3845:

WFLAGS="-Wall -fPIC"

I didn't test if this code is compatible with other architectures, I'm
not an expert, :D.

It wasn't enough, [flite] dependances has been installed with apt-get,
then the flite headers and libraries wasn't in a place expected by the
configure file (I didn't have chace with --with-flite-dir option). I
didn't modify the configure file very elegantly for having the script
finding headers and libraries, but it has worked...

IFLAGS="$IFLAGS -I/usr/include/flite"
LFLAGS="$LFLAGS -L/usr/lib"

I hope those informations will help for having availability of clean
sources of [flite] for x86_64 arch on ubuntu without pain...
Thank in advance.

 Also, playing with the help file has been a real fun, because making pd
speaking is a kind of drool experience...(thanks hardoff of this
resurrection).
 The attached file is a modification of the help patch I've made for
resolving a buffer issue, I've just added a banged message 
[;array const  0( 
before flite computes the voice, for emptying the buffer, it's one
method among many others...

 And finaly, anyone knows how to configure the synthetized voice?

Patko.
 



-------------- next part --------------
#N canvas 246 29 606 524 8;
#X text 25 4 flite : text-to-speech synthesis with libflite;
#N canvas 0 0 450 300 (subpatch) 0;
#X array words1 34742 float 0;
#X coords 0 1 34741 -1 100 70 1;
#X restore 265 245 graph;
#N canvas 0 0 450 300 (subpatch) 0;
#X array words2 61241 float 0;
#X coords 0 1 61240 -1 100 70 1;
#X restore 426 248 graph;
#X obj 22 296 print flite-synth-done;
#X obj 23 279 flite words1;
#X text 51 35 ARRAYNAME - initial array name;
#X text 328 32 1 - control messages;
#X text 321 59 1 - bang on completed synthesis;
#X text 30 22 ARGUMENTS:;
#X text 312 18 INLETS:;
#X text 305 45 OUTLETS:;
#X msg 7 57 set words1;
#X msg 20 77 set words2;
#X msg 69 141 synth;
#X text 120 139 "synth" message synthesizes current text-buffer;
#X text 91 78 "set" message selects the output array;
#X text 232 162 "list" messages set text and synthesize;
#X obj 31 444 dac~;
#X msg 262 358 \; pd dsp 1;
#X msg 328 358 \; pd dsp 0;
#X text 10 340 For playback \, you can use 'tabplay~':;
#X msg 32 363 set words1;
#X msg 37 383 set words2;
#X obj 31 417 tabplay~ words1;
#X msg 146 380 bang;
#X msg 197 381 stop;
#X msg 146 358 start;
#X text 173 485 Bryan Jurish <moocow at ling.uni-potsdam.de>;
#X text 172 419 ACKNOWLEDGEMENTS:;
#X text 190 434 Flite runtime speech synthesis library by Alan W Black
and Kevin A. Lenzo.;
#X msg 91 163 list bang bahda boobop;
#X msg 33 115 text 123 45 bahda boobop;
#X symbolatom 104 183 10 0 0 0 - - -;
#X obj 104 201 list prepend;
#X msg 129 262 \; words1 const 0;
#X obj 103 233 t a b;
#X connect 4 0 3 0;
#X connect 4 0 23 0;
#X connect 11 0 4 0;
#X connect 12 0 4 0;
#X connect 13 0 35 0;
#X connect 21 0 23 0;
#X connect 22 0 23 0;
#X connect 23 0 17 0;
#X connect 23 0 17 1;
#X connect 24 0 23 0;
#X connect 25 0 23 0;
#X connect 26 0 24 0;
#X connect 30 0 35 0;
#X connect 31 0 35 0;
#X connect 32 0 33 0;
#X connect 33 0 35 0;
#X connect 35 0 4 0;
#X connect 35 1 34 0;


More information about the Pd-list mailing list