-
sdr.FarrowFractionalDelay.__call__(x: ArrayLike, m: ArrayLike | None =
None
, mu: ArrayLike | None =None
, mode: 'rate' | 'full' ='rate'
) NDArray Applies the fractional sample advance \(\mu(k)\) to the input signal \(x[n]\) at the given basepoint sample indices \(m(k)\).
\[y[k] = x((m(k) + \mu(k)) T_s) = x[m(k) + \mu(k)]\]- Parameters:¶
- x: ArrayLike¶
The input signal \(x[n] = x(n T_s)\).
- m: ArrayLike | None =
None
¶ The basepoint sample indices \(m(k)\), which are the integer sample indices of the input signal.
- mu: ArrayLike | None =
None
¶ The fractional sample indices \(0 \le \mu(k) \le 1\), which is the fractional sample advance of the input signal at input sample \(m(k)\).
- mode: 'rate' | 'full' =
'rate'
¶ The convolution mode.
"rate"
: The output signal \(y[k]\) is aligned with the input signal, such that \(y[0] = x[0 + \mu]\).In non-streaming mode, \(L - D\) output samples are produced. In streaming mode, the first call returns \(L - D\) output samples, where \(L\) is the length of the basepoint and fractional sample indices. On subsequent calls, \(L\) output samples are produced.
"full"
: The full convolution is performed, and the filter delay \(D\) is observed, such that \(y[D] = x[0 + \mu]\).In non-streaming mode, \(L\) output samples are produced. In streaming mode, each call returns \(L\) output samples.
- Returns:¶
The resampled signal \(y[k]\).
Examples¶
See the Farrow arbitrary resampler example.