nnsvs.pitch

This module provides functionality for pitch analysis.

References:

Nakano et al, “An Automatic Singing Skill Evaluation Method for Unknown Melodies Using Pitch Interval Accuracy and Vibrato Features” Proc. Interspeech 2006.

山田 et al, “HMM に基づく歌声合成のためのビブラートモデル化” IPSJ SIG Tech. Report 2009.

Note that vibrato extraction method in this module is exerimental. Because details of the vibrato extraction method are not described in the above papers and not trivial to implement (in my opinion), my implementation may not work well compared to the original author’s one. Also note that there are a lot of tunable parameters (threshold, window size, min/max extent, cut-off frequency, etc.). If you want to get maximum performance, you might want to tune these parameters with your dataset. I tested this code with kiritan_singing and nit-song070 database.

Vibrato modeling

extract_vibrato_likelihood

Extract vibrato likelihood

extract_vibrato_parameters

Extract vibrato parameters

gen_sine_vibrato

Generate F0 with sine-based vibrato

Utility

hz_to_cent_based_c4

Convert Hz to cent based on C4

cent_to_hz_based_c4

Convert cent to Hz based on C4

nonzero_segments

Find nonzero segments