[Subject Prev][Subject Next][Thread Prev][Thread Next][Date Index][Thread Index]

[hts-users:01104] Re: Questions on using LSP and HTS-demo_Nitech-ATR503-M001


Hi,

QHE wrote (2008/01/16 13:39):

I subscribed to the maillist, but I can't post message. The following is my question:

We received the following error messages:

08/01/15 23:13:57 Loop Alert: Duplicated Message-ID (obase@xxxxxxx)
08/01/15 23:23:10 Loop Alert: Duplicated Message-ID (obase@xxxxxxx)
08/01/16 13:32:54 Loop Alert: Duplicated Message-ID (obase@xxxxxxx)


I'm using the LSP parameter instead of MGC. But when the training is finished, I find the wave files synthesized are not so cleared as the MGC ones.

I think it came from differences in spectral analysis conditions.
I guess you used 24-order analysis for MGC (mel-cepstrum?) and 12-order for LSP.
This difference affects the final quality.
The use of linear-frequency rather than mel-frequency also affects the final quality.

It seems that HTS does not support LSP synthesizing,

No, it supports LSP.

It converts LSP to MGC, and use MGC to synthesize waves.

In HTS-demo, LSPs are converted to equivalent MGCs, and then waveforms are synthesized.
In your setting, LSPs are converted to equivalent LPCs because MGC is a generalized parameterization including LP and cepstral analysis techniques.

MGLSA filter becomes the synthesis filter for LPC if FREQWARP==0.0 and gamma==1.
Therefore, even if you use the synthesis filter for LSP, you will obtain almost the same quality.

If hts_engine support LSP directly, is it possible to get better performance?

No.

And another 2 questions:
1. According to 'scripts/label-full.awk', the .lab files in labels/full should start with 2 boundry number, but in fact there are not, the .lab files only contain the hmm names like:
x-sil+a/A:x_x/B:x_x_x-x_x_x+x_x_x/C:x_x_x_x-x_x_x_x_x+4_3_x_x/D:x-x_x+9/E:26

Read HTKBook Section 6.2.1.

2. In the script train.pl, the hts_engine synthesizing is controlled by several parameters:
# hts_engine (synthesizing waveforms using hts_engine)
if ($ENGIN && $ul==0 && $gm==0) {
   print_time("synthesizing waveforms using hts_engine");
where $ul is MGCLSP, so when I'm using LSP, this section is skipped. Why it's designed like this?

Currently hts_engine does not support LSPs.

Regards,

Heiga ZEN (Byung Ha CHUN)

--
------------------------------------------------
Heiga ZEN     (in Japanese pronunciation)
Byung Ha CHUN (in Korean pronunciation)

Department of Computer Science and Engineering
Nagoya Institute of Technology
Gokiso-cho, Showa-ku, Nagoya 466-8555 Japan

http://www.sp.nitech.ac.jp/~zen
------------------------------------------------