I'm learning a method to genenrate pink noise by filtering a white noise in this book, and the author mentioned an estimation of T60 given the coefficients of an IIR filter in the code that
B = [0.049922035 -0.095993537 0.050612699 -0.004408786]; A = [1 -2.494956002 2.017265875 -0.522189400]; nT60 = round(log(1000)/(1-max(abs(roots(A))))); % T60 est.
nT60 is reverberant time (T60) in terms of discrete sample, and
A is the denominator coefficients.
This method gives a rough T60 estimation of the given coefficients which is 1430. The integrated impulse response method gives a estimation of around 1426.
h = impz(B, A, 2048); td = length(h); L(td:-1:1)=10*log10(cumsum(h(td:-1:1).^2)/sum(h(1:td).^2)); % plot the energy decay curve, and then calculate the slope of the curve
These two results are surprisingly close enough considering the simplicity of the former one.
In the field of acoustics we usually calculate T60 for an impulse response which is often an FIR filter. I'm wondering if there is any theoretical derivation of this method. Any reference would be very grateful.