Emile
04-05-2009, 05:03 PM
Hi,
im working on a schoolproject to render sound in a virtual environment.
To do that i calculate sound propagation paths.
At the moment i model wall soundabsorption with onepole lowpass filters.
Some paths bounce of several walls, causing several onepole filters
working in series.
I update my paths at about 25Hz and filtering i do in timedomain at 44100Hz.
Now i would like to replace the series of filters, when i update the
soundpaths at 25Hz, with 1 filter. (the more i think about it the more i
think this will be premature optimization, and thus evil, but still)
I have tried an experiment in matlab, but it seems i cant just multiply
/add coefficients (you probably think: duh!)
So say i have 2 onepole filters k and l, an inputsignal x and
outputsignal y. Then i would like to know how to compute the filter f if:
y = k(l(x)) = f(x)
im working on a schoolproject to render sound in a virtual environment.
To do that i calculate sound propagation paths.
At the moment i model wall soundabsorption with onepole lowpass filters.
Some paths bounce of several walls, causing several onepole filters
working in series.
I update my paths at about 25Hz and filtering i do in timedomain at 44100Hz.
Now i would like to replace the series of filters, when i update the
soundpaths at 25Hz, with 1 filter. (the more i think about it the more i
think this will be premature optimization, and thus evil, but still)
I have tried an experiment in matlab, but it seems i cant just multiply
/add coefficients (you probably think: duh!)
So say i have 2 onepole filters k and l, an inputsignal x and
outputsignal y. Then i would like to know how to compute the filter f if:
y = k(l(x)) = f(x)