Patent ID: 7890563

Claim:
A method of converting the sampling rate of multiple input channels, comprising: digitizing N input channels at a first sampling rate; and converting the sampling rate of each of said N input channels to produce N output channels at a second output sampling rate; said sampling rate conversion comprising: computing with one or more microprocessors a common FIR interpolating function which depends upon the input and output sample clocks and the instantaneous output time; and applying said common FIR interpolating function to all N input channels to compute all N output channels; wherein said computing of a common FIR interpolating function comprises: decomposing instantaneous output time (T out ) into integer and fractional portions where T out =N+t out , where N=floor(T out ) and t out =T out −N; providing a set of M precomputed FIR filter coefficient sets, each of said filter sets denoted as h k [n] and arranged to calculate a fractionally-delayed output at time k/M , with k=0,1, . . . , M−1; choosing the x filter coefficient sets nearest T out :h k [n], h k+1 [n], h k+2 [n], . . . , h k+(x−1) [n] where k=floor(t out *M)−2; decomposing t out into integer and fractional portions where t out =T M +tt, T M = 1 M ⁢ ⁢ floor ⁡ ( t out ⁢ M ) = k M , and tt=t out −T M ; scaling tt to obtain the quantity t c which lies in the range 0≦t c <1, where t c =M tt; and using polynomial interpolation to compute the desired interpolating function h net [i] from a linear weighted sum of the filter coefficient sets h k [n], h k+1 [n], h k+2 [n] , . . . , h k+(x−1) [n] in which the weighting coefficients depend solely on t c : h net [ i]=w a ( t c ) h k [ i]+w b ( t c ) h k+1 [ i]+w c ( t c ) h k+2 [ i]+ . . . +w x ( t c ) h k+(x−1) [ i], h net [i] being said common FIR interpolating function.