mmorise / World

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

How to handle the input audio and output it in real time? #43

Closed xczexcel closed 5 years ago

xczexcel commented 7 years ago

In your source code, there are three ways to deal with the input audio. The second and third way that you comment can deal with the audio in real time. Can you tell me how to deal with the input audio and output it in real time . I mean the output delay the input some ms. Thanks a lot!

mmorise commented 7 years ago

Now, WORLD provides only the real-time synthesis function. Real-time analysis, that is required to achieve the real-time voice conversion, cannot be implemented yet. Current version requires the offline processing in the analysis.

Best regards,

xczexcel commented 7 years ago

Thanks for your reply! I try to divide an audio into several segments, and processe each segment in turn .Then I stitch the result of each segment to get the final result. But the result show there are some noise at the stitch point. So how can I remove such noise and make the final result flow? Thanks a lot!

mmorise commented 7 years ago

Unfortunately, it is impossible to achieve the real-time analysis by your idea. Discontinuous change of amplitude by the windowing causes the unwanted noise. If you want to solve this problem, you keep several segments to avoid the discontinuous change.

This is difficult problem because the window length depends on the F0. You must determine the required segments by F0 information. In cases where the F0 is low and segment is too short, the segment in future may be required. A complex procedure is required to achieve the real-time analysis in WORLD, so I don't implement it yet. In particular, guaranteeing the same result compared with the offline processing is crucial but difficult.

flyuuo9 commented 5 years ago

Is there somebody have solved the problem? I met the same question too, need your help. tks!@mmorise

YuzukiTsuru commented 5 years ago

I accelerated the analysis by saving features to files