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

[hts-users:03636] v2.2 STRAIGHT demo: MGC2SP usage bug?


In Training.pl of HTS-demo_CMU-ARCTIC-SLT_STRAIGHT, there is this usage of MGC2SP:

 

shell( "$MGC2SP -a $fw -g $gm -m " . ( $ordr{'mgc'} - 1 ) . " -l 1024 -o 2 $mgc > $gendir/$base.sp" );

 

The output $base.sp is later read into MATLAB and passed into the STRAIGHT synthesis function, along with the corresponding $base.ap and $base.f0.

 

I noticed that in MATLAB, the sp and ap data do not have the same size along the spectral dimension. Specifically, ap has spectral size 1025 and sp has spectral size 513.

 

Note that when STRAIGHT is used to generate training data, sp and ap do have the same spectral size: 1025. Additionally, when MGCEP and LPC2LSP are used to generate training data, they are used with –l 2048 (-n 2048 for LPC2LSP).

 

Surprisingly, it seems that the STRAIGHT synthesis is correcting for the size mismatch, presumably by interpolating sp up to the correct size. I confirmed this with some experimentation.

 

Based on all this, I am guessing that MGC2LSP should be used with –l 2048, in order to be fully consistent.

 

Regards,

David Klein

 

 


Follow-Ups
[hts-users:03637] Re: v2.2 STRAIGHT demo: MGC2SP usage bug?, David Klein