Hi Rob,

Thank you very much for your comments. Unfortunately I have been asked to
stick to the Unisyn synthesizer since that is the one we will be basing our
voices etc. on.

I have been running festival with a debugger for the past so many days and
have made a little progress.

I am stuck in the function leval in slib.cc. I keep looping through this
function and step through it as well but am not able to get to the
underlying C++ code (where the LPC resynthesis occurs). I feel that this is
the loop where the resynthesis happens. I have the following questions:

1. Which are the C++ functions where the LPC resynthesis takes place?
2. Where would the functions for unit selection be?

Regards,
Sriram Shankar.

On Mon, Feb 6, 2012 at 3:51 AM, Rob Clark <[email protected]> wrote:

> Probably the best way to see how LPC works is to download the following:
>
> The multisyn build tools.
> http://www.cstr.ed.ac.uk/downloads/festival/multisyn_build/
> (These provide "unit selection" voice building tools, which include
> scripts for creating LPC and Residuals) See the files in the
> documentation directory.
>
>
> http://www.cstr.ed.ac.uk/downloads/festival/1.95/festvox_cstr_us_awb_arctic_multisyn-1.0.tar.gz
>
> This is an example multisyn voice. It hasn't been maintained so won't
> run unaltered with Festival 2.1
> (If you want to run it with 2.1,  define the scheme function it
> complains as missing as a function that does't do anything in the
> scheme file which defines the voice.)
>
> Otherwise just look at the scheme voice definition in the above file
> to see what scheme commands get called to do lpc synthesis.
> Note that for these functions to work, they requires certain relations
> in the Utt structure to exist and be meaningful.
>
> It is not too difficult to follow the scheme through to the C++. just
> grep for things in src/modules/*. It is much harder to follow what the
> signal processing code actually does and I haven't had to do so for a
> few years, so I can't really provide much advice.
>
> It is also worth noting that the same code can just do overlap and add
> if provided with a wave file and a pitch mark file rather than a
> residual and lpc coefs.
>
> Multisyn doesn't do pitch modification by default, but it can be
> turned on, it does sometimes break though with multisyn voice data, I
> think mostly when you ask it to do modification by an unreasonable
> amount.
>
> Regards,
> Rob.
>
> On 5 February 2012 13:30, Nickolay V. Shmyrev <[email protected]> wrote:
> > On 01/02/2012 at 13:54 +0530, Sriram Shankar wrote:
> >> Hi,
> >>
> >> I am trying to go deeper into Festival by trying to understand the
> >> code. As a task, I am trying to give a wave file from the command
> >> line, create its LPC coefficients and then resynthesize with LPC. My
> >> question:
> >>
> >> 1. What C++ classes can be used to analyze an input wave file into its
> >> LPC coefficients?
> >
> > EST_sigpr_utt
> >
> >> 2. Is there a document that explains the underlying C++ classes in the
> >> Festival code in greater detail?
> >
> > Yes, it's called "source code"
> >
>
>
>
> --
> Rob Clark
>
_______________________________________________
Festlang-talk mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/festlang-talk

Reply via email to