xiph / LPCNet

Efficient neural speech synthesis
BSD 3-Clause "New" or "Revised" License
1.12k stars 295 forks source link

Difference betwen lpcnet_compute_single_frame_features and lpcnet_compute_features for pitch #172

Open DamRsn opened 2 years ago

DamRsn commented 2 years ago

Hello,

I would like to use lpcnet's pitch detector and I am wondering whether I should go with lpcnet_compute_single_frame_features (that processes a single 10ms frame) or lpcnet_compute_features (that processes 4 10 ms frames at once).

From what I understood from the lpcnet codec paper, a Viterbi search is performed over 40ms packets to get a consistent pitch path. I suppose that this is implemented in lpcnet_compute_features. But concerning lpcnet_compute_single_frame_features, it seems like the pitch is computed differently since the whole 40ms "superframe" is not available.

Could you tell me if the Viterbi search is somehow also implemented in lpcnet_compute_single_frame_features ? Or if the two functions work differently, how do they differ ?

Thank you