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

[hts-users:03553] Re: HTS 2.3alpha F0 problem: a bug in pitch calculation?


Thanks,

My bad. For some reason I the -p $(FRAMESHIFT) part from demo script
command had been dropped by me...


br,
  Nicholas

> Hi,
>
> Could you try -p option to specify frame shift?
> Default frame shift of pitch command is 80 points.
> So, frame shift of your command lines is set to 3.6ms (=80/22050).
>
> Regards,
> Keiichiro Oura
>
>
> 2013/1/1 Nicholas Volk <nvolk@xxxxxxxxxx>:
>> Hi all,
>>
>> I got unexpectedly bad results when I applied HTS 2.3 alpha to a 22kHz
>> voice. After some investigation I now suspect that it's the new F0
>> algorithm from SPTK 3.6 that is causing me problems...
>>
>> I have a wav file with following contentes;
>>
>> $ ~/speech_tools/bin/ch_wave -info wav/mv_0002.wav
>> Duration: 8.9165
>> Sample rate: 22050
>> Number of samples: 196608
>> Number of channels: 1
>> Header type: riff
>> Data type: short
>>
>> from which I have taken the 56 byte header away to make it a raw file.
>> Size and contents otherweise unchanged. Then I calculated the pitch of
>> this file with the new pitch command introduced in SPTK 3.6.
>>
>> /usr/local/SPTK-3.6/bin/x2x +sf
>> /home/niko/festival/lib/voices/finnish/bl_fi_mv_clunits/festy/raw22/mv_0001.raw
>> | /usr/local/SPTK-3.6/bin/pitch -H 160 -L 50 -s 22.05 -o 1 |
>> /usr/local/SPTK-3.6/bin/x2x +fa | tee
>> /home/niko/festival/lib/voices/finnish/bl_fi_mv_clunits/festy/f0/mv_0001.asc
>>
>> I convert this to asc to see the results. The figures are reasonable
>> (didn't check them against the wav but there are unvoiced and voiced
>> sections), implying that the algorithm works. (Obviously, as it worked
>> perfectly fine with the 48kHz demo voice.). However, I get unexpected
>> results regarding length:
>>
>> $ wc -l f0/mv_0002.asc
>> 2458 f0/mv_0002.asc
>>
>> The F0 contour should have 5ms intervals, but the length of the output
>> would imply that the input size is 12.29s (2458*5ms). The factor of
>> unexpected lengthening is 1.378
>>
>> $ perl -e 'print(12.29/8.9165);'
>> 1.37834352043963
>>
>> That is extremely close the difference between 22kHz and 16kHz:
>>
>> $ perl -e 'print(22.050/16);'
>> 1.378125
>>
>> For some reason, wrong sample rate seems to be applied by pitch command.
>> So, I think there's a bug in SPTK 3.6 pitch command relating the the
>> input
>> sample rate for some (not 16/32/48kHz) sample rates.
>>
>> br,
>>   Nicholas
>>
>>
>>
>>
>>
>
>



References
[hts-users:03551] HTS 2.3alpha F0 problem: a bug in pitch calculation?, Nicholas Volk
[hts-users:03552] Re: HTS 2.3alpha F0 problem: a bug in pitch calculation?, Keiichiro Oura