zerodf#
- class diffsptk.AllZeroDigitalFilter(filter_order: int, frame_period: int, ignore_gain: bool = False)[source]#
See this page for details.
- Parameters:
- filter_orderint >= 0
The order of the filter, \(M\).
- frame_periodint >= 1
The frame period in samples, \(P\).
- ignore_gainbool
If True, perform filtering without the gain.
- forward(x: Tensor, b: Tensor) Tensor [source]#
Apply an all-zero digital filter.
- Parameters:
- xTensor [shape=(…, T)]
The excitation signal.
- bTensor [shape=(…, T/P, M+1)]
The filter coefficients.
- Returns:
- outTensor [shape=(…, T)]
The output signal.
Examples
>>> x = diffsptk.step(4) >>> b = diffsptk.ramp(4) >>> zerodf = diffsptk.AllZeroDigitalFilter(0, 1) >>> y = zerodf(x, b.view(-1, 1)) >>> y tensor([[0., 1., 2., 3., 4.]])
- diffsptk.functional.zerodf(x: Tensor, b: Tensor, frame_period: int = 80, ignore_gain: bool = False) Tensor [source]#
Apply an all-zero digital filter.
- Parameters:
- xTensor [shape=(…, T)]
The excitation signal.
- bTensor [shape=(…, T/P, M+1)]
The filter coefficients.
- frame_periodint >= 1
The frame period in samples, \(P\).
- ignore_gainbool
If True, perform filtering without the gain.
- Returns:
- outTensor [shape=(…, T)]
The output signal.
See also