0
$\begingroup$

what is the best algorithm for time_scaling of a speech signal in which I've seen two of them and I don't know which one to use :

Psola:Pitch synchronous overlap and add.

time scaling modification using modified short Fourier transform magnitude .

what is the difference between them and which one is good for speech signal ? In other words which one in more accurate and close to the original signal. If there are other good ones please tell me

$\endgroup$
  • $\begingroup$ what factor of time-scaling are you looking for, i.e. what are your min/max time-scaling factors? $\endgroup$ – ruoho ruotsi Dec 8 '15 at 18:49
  • $\begingroup$ min = 0.5 and the max = 2 , if Scale<1 the the time will be expanded and if Scale >1 the time will be compressed and I used this formula to find the length of the output signal = length(input_signal)/scale; $\endgroup$ – Lama Sonmez Dec 8 '15 at 18:52
2
$\begingroup$

The best depends exclusively on the type of signal you want to modify, if you just need apply time scale in monophonic (Speech), PSOLA and TDHS can give to you very nice results, but It is not as easy as you read in books, find Pitch Marks (Glottal Closure Instant) in PSOLA is really a big problem, in TDHS if your pitch track are consistent you can scale the signal to the hell, for Time scaling unsig FFT (commonly known as phase vocoder) this works better in polyphonic signals and to get best results here do you need use a locked phase vocoder.

Find the length is a easy step, for stretch factor between 0.5 and 2.0 you can use some time domain technics: ola, sola, wsola, psola, tdhs, you can try keith lent (I consider a bit different of PSOLA) in the Lent code you can try 50% of crossfade hann window that works nice for my ears.

|improve this answer|||||
$\endgroup$
1
$\begingroup$

In @ederwander 's excellent answer, I can add that there are also parametric techniques, mostly based on some sinusoidal model: there are pitch and time shifting techniques for Quatieri's classic paper on sinusoidal modeling (here), some simpler but efficient alternatives in this thesis, some more recent advances in STRAIGHT vocoder, inlcuding speech transformations (here - code is available here), some sophisticated models based on a harmonic representation (here and in this thesis).

I think that for the scaling factors of your interest, nonparametric time domain methods like WSOLA (a simple source code can be found here) are pretty OK. However, I would take a look at STRAIGHT though. :)

|improve this answer|||||
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.