Hi Florian,

Florian Schmidt wrote:

For quick tests without libDSP you can tweak the jack_convolve Makefile
a little:

uncomment the

#COMPILE_FLAGS += -DC_CMUL

line and remove "-ldsp" from the LINK_FLAGS line. This will use an
unoptimized C complex multiplication implementation. jack_convolve will
use around 10-20% more cpu than with the libDSP implementation.

It did compile. I also needed to remove the #include <dsp/dspop.h> in convolve.c

Okay, so I now have an idea of what convolution is. Your little piece of software is very nice, very easy to understand. I used three samples : a bassdrum, a snare drum, and a short guitar chord. I plugged the output of one of my pads into jack_convolve's input and its output into the alsa_pcm playback.

Both the bassdrum and the chord sounded quite nice. But the snare drum sounded like very far away. I guess this comes from the silence at the end of this sample.

What exactly happens with these "response files" ? Should I use very simple samples, like a sine wave with no silence ? Shouldn't convolving be coupled with trigerring ? I mean : hitting the pad would start the sample playback, and the convolving engine would use both this sample playback and the pad signal to produce its output. In this case, jack_convolve would then need one output and two inputs :
- one for the pad signal,
- and one for the "response signal", that is : the sample playback that started right when the pad got hit

Is this possible, or do I misunderstand convolution here ?

Regards

--
 og


Reply via email to