-
sdr.Interpolator(rate: int, taps: 'kaiser' | 'linear' | 'linear-matlab' | 'zoh' | ArrayLike =
'kaiser'
, streaming: bool =False
) Creates a polyphase FIR interpolating filter.
- Parameters:¶
- rate: int¶
The interpolation rate \(r\).
- taps: 'kaiser' | 'linear' | 'linear-matlab' | 'zoh' | ArrayLike =
'kaiser'
¶ The multirate filter design specification.
"kaiser"
: The multirate filter is designed usingmultirate_taps()
with argumentsrate
and 1."linear"
: The multirate filter is designed to linearly interpolate between samples. The filter coefficients are a length-\(2r\) linear ramp \(\frac{1}{r} [0, ..., r-1, r, r-1, ..., 1]\). The first output sample aligns with the first input sample."linear-matlab"
: The multirate filter is designed to linearly interpolate between samples. The filter coefficients are a length-\(2r\) linear ramp \(\frac{1}{r} [1, ..., r-1, r, r-1, ..., 0]\). This is method MATLAB uses. The first output sample is advanced from the first input sample."zoh"
: The multirate filter is designed to be a zero-order hold. The filter coefficients are a length-\(r\) array of ones.npt.ArrayLike
: The multirate filter feedforward coefficients \(h_i\).
- streaming: bool =
False
¶ Indicates whether to use streaming mode. In streaming mode, previous inputs are preserved between calls to
__call__()
.