Lably
Skip to content

Sample-rate conversion

Changing the sampling rate of a discrete signal

  • 3 min read
  • 2 chapters

Related on Lably

Through Microsoft Windows and Operating system

For example, Compact Disc Digital Audio and Digital Audio Tape systems use different sampling rates, and American television, European television, and movies all use different frame rates. Sample-rate conversion prevents changes in speed and pitch that would otherwise occur when transferring recorded material between such systems.

More specific types of resampling include: upsampling or upscaling; downsampling, downscaling, or decimation; and interpolation. The term multi-rate digital signal processing is sometimes used to refer to systems that incorporate sample-rate conversion.

Techniques

Conceptual approaches to sample-rate conversion include: converting to an analog continuous signal, then resampling at the new rate, or calculating the values of the new samples directly from the old samples. The latter approach is more satisfactory since it introduces less noise and distortion. Two possible implementation methods are as follows:

  1. If the ratio of the two sample rates is (or can be approximated by) a fixed rational number L/M: generate an intermediate signal by inserting L − 1 zeros between each of the original samples. Low-pass filter this signal at half of the lower of the two rates. Select every M-th sample from the filtered output to obtain the result.
  2. Treat the samples as geometric points and create any needed new points by interpolation. Choosing an interpolation method is a trade-off between implementation complexity and conversion quality (according to application requirements). Commonly used are: zero-order hold (for film/video frames), cubic (for image processing) and windowed sinc function (for audio).

The two methods are mathematically identical: picking an interpolation function in the second scheme is equivalent to picking the impulse response of the filter in the first scheme. Linear interpolation is equivalent to a triangular impulse response; windowed sinc approximates a brick-wall filter (it approaches the desirable brick-wall filter as the number of points increases). The length of the impulse response of the filter in method 1 corresponds to the number of points used in interpolation in method 2.

In method 1, a slow pre-computation (such as the Remez algorithm) can be used to obtain an optimal (per application requirements) filter design. Method 2 will work in more general cases, e.g., where the ratio of sample rates is not rational, or two real-time streams must be accommodated, or the sample rates are time-varying.

See decimation and upsampling for further information on sample-rate conversion filter design/implementation.

Sign in to keep reading

One more chapter is free with a Lably account.

More in Computing and communication