pydsm.NTFdesign.psychoacoustic.ntf_dunn¶
- pydsm.NTFdesign.psychoacoustic.ntf_dunn(order=3, osr=64, H_inf=1.5)¶
Synthesizes an NTF for a DS audio modulator by Dunn’s approach.
The signal bandwidth is 22.05 kHz.
Parameters: order : int, optional
the order of the modulator, defaults to 3
osr : float, optional
the oversamping ratio (based on the actual signal bandwidth)
H_inf : real, optional
max allowed peak value of the NTF. Defaults to 1.5
Returns: ntf : tuple
noise transfer function in zpk form.
Warns: As in DELSIG’s synthesizeNTF
See also
- pydsm.delsig.synthesizeNTF
- DELSIG’s optimal NTF design strategy.
Notes
This is not exactly Dunn’s method (but it should be equivalent or slightly better). In fact, to avoid re-implementing the pole selection algorithm, that in [R3] is based on a Butterworth synthesis, here the pole selection logic used in DELSIG’s synthesizeNTF is recycled. This should not make a big difference since DELSIG logic is anyway based on a pole positioning aimed at obtaining a maximally flat response of the NTF denominator in the signal band. This has the advantage of automatically controlling the peak gain of the NTF, as in the Lee criterion.
Parameter H_inf is used to enforce the Lee stability criterion.
[R3] Chris Dunn and Mark Sandler, “Psychoacoustically Optimal Sigma Delta Modulation,” J. Audio Eng. Soc., Vol. 45, No. 4, pp. 212 - 223 (1997 April)