mmorise / World

A high-quality speech analysis, manipulation and synthesis system
http://www.kisc.meiji.ac.jp/~mmorise/world/english
Other
1.15k stars 249 forks source link

a bug in synthesisrealtime.cpp #138

Closed xiaozhuo12138 closed 2 years ago

xiaozhuo12138 commented 2 years ago

tmp = GetNextPulseLocationIndex(synth); noise_size = tmp - current_location;

if function GetNextPulseLocationIndex return 0,noise_size will be less than 0

mmorise commented 2 years ago

In cases where the function GetNextPulseLocationIndex() returns 0, the function CheckSynthesizer() used in the line 575 should also return 0. In this case, since the function Synthesis2() is terminated, we don't call the function GetNextPulseLocationIndex().

xiaozhuo12138 commented 2 years ago

@mmorise thanks ,Is it possible that synth->current_pointer == synth->head_pointer - 1 in the line 382

mmorise commented 2 years ago

My memory of when I implemented it is a little fuzzy, but it seems that this process would be unnecessary. On the other hand, removing this process may introduce a bug because I don't check that it is reasonable.

xiaozhuo12138 commented 2 years ago

@mmorise thanks