[Numpy-discussion] "Dynamic convolution" in Numpy
arthur de conihout
Thu Jun 3 05:49:34 CDT 2010
i m fighting with a dynamic binaural synthesis(can give more hints on it if
i would like to modify the sound playing according to listener's head
position. I got special filters(binaural ones) per head position that i
convolve in real time with a monophonic sound.When the head moves i want to
be able to play the next position version of the stereo generated sound but
from the playing position(bit number in the unpacked datas) of the previous
one.My problem is to hamper audible artefacts due to transition.
At moment i m only using *short audio wav* that i play and repeat if
necessary entirely because my positionning resolution is 15°
degrees.Evolution of head angle position let time for the whole process to
operate (getting position->choosing corresponding filter->convolution->play
*For long **audio wav* I could make a fade-in fade-out from the transition
point but i have no idea how to implement it(i m using audiolab and numpy
An other solution could be dynamic filtering means when i change position i
convolve the next position filter from the place the playing must stop for
the previous one(but won't pratically stop to let the next convolution
operates on enough frames) in accordance with the filter frame length(all
the filters are impulse response of the same lenght 128).
The "drawing" i introduce just below is my mental representation of what i m
looking to implement, i already apologize for its crapitude (and one of my
monophonic sound(time and bit position in the unpacked datas)
running convolution with filter 1 corresponding to position 1 (ex: angle
sound playing 1
position 2 detection(angle=30°)
running convolution with filter 2
keep playing 1 for convolution 2 to operate on enough
fade in fade out
sound playing 2
I don't know if i made myself very clear.
if anyone has suggestions or has already operated a dynamic filtering i
would be well interested.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the NumPy-Discussion