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:
orderint, optional

the order of the modulator, defaults to 3

osrfloat, optional

the oversamping ratio (based on the actual signal bandwidth)

H_infreal, optional

max allowed peak value of the NTF. Defaults to 1.5

Returns:
ntftuple

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 [1] 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.

[1]

Chris Dunn and Mark Sandler, “Psychoacoustically Optimal Sigma Delta Modulation,” J. Audio Eng. Soc., Vol. 45, No. 4, pp. 212 - 223 (1997 April)