Efficient arbitrary sampling rate conversion with recursive calculation of coefficients

In this paper, we present a novel algorithm for sampling rate conversion by an arbitrary factor. Theoretically, sampling rate conversion of a discrete-time (DT) sequence can be performed by converting the sequence to a series of continuous-time (CT) impulses. This series of impulses is filtered with a CT lowpass filter, and the output is then sampled at the desired rate. If the CT filter is chosen to have a rational transfer function, then this system can be simulated using a DT algorithm for which both computation and memory requirements are low. The DT implementation is comprised of a parallel structure, where each branch consists of a time-varying filter with one or two taps, followed by a fixed recursive filter operating at the output sampling rate. The coefficients of the time-varying filters are calculated recursively. This eliminates the need to store a large table of coefficients, as is commonly done.