Module voice_fft_speed
[frames] | no frames]

Source Code for Module voice_fft_speed

 1  #! python 
 2   
 3  """A little program to check that voice_misc._fftwork() is correct.""" 
 4   
 5   
 6  from gpk_voicing import voice_misc 
 7  import numpy 
 8  import pylab 
 9  import time 
10   
11   
12 -def plot(start, end):
13 x = [] 14 y = [] 15 z = [] 16 ws = 0.0 17 ts = 0.0 18 for n in range(start, end): 19 x.append(n) 20 w = voice_misc._fftwork_real(n) 21 # w = voice_misc._fftwork(n) 22 y.append(w) 23 q = numpy.zeros((n,)) 24 k = 0 25 t0 = time.clock() 26 while time.clock() < t0 + 0.1: 27 # numpy.fft.fft(q) 28 s = numpy.fft.rfft(q) 29 numpy.fft.irfft(s) 30 k += 1 31 t1 = time.clock() 32 dt = (t1-t0)/k 33 z.append(dt) 34 ts += dt 35 ws += w 36 wscaled = [w*(ts/ws) for w in y] 37 pylab.plot(x, wscaled, 'g') 38 pylab.plot(x, z, 'r+') 39 pylab.show()
40 41 42 if __name__ == '__main__': 43 plot(127, 257) 44