JConv
Posted: Sun Feb 17, 2008 3:32 pm
So I've been playing with Jconv since yesterday and it works wonders.
Download
JConv 0.2.0
Installation
As mentioned in the general "Reverb" topic, here's what you need to know to built it. The reason that the build fails is because jconv relies on a pre-release version of libsndfile that contain support for ambisonic file formats. The solution is to edit a single line in the Makefile so it looks like this:
You might also want to change the prefix to /usr/local to keep a clean and tidy system.
Usage
JConv is really easy to use. However, it does not come with any fancy GUI, instead it's usually run at the command line with a single argument pointing to the configuration file.
The configuration file has a simple syntax. Here's a example for my Prosoniq/Medium Spaces/Stage IR line by line.
This changes the directory (duh!) so that we don't have to repeat the whole absolute path further down.
Now we're creating a new convolver with two input and two output channels, the partition is 256 samples (the same as my JACK period for zero latency) and the last number is the maximum amount of memory an impulse will use (I just use a default value far larger than most of my impulses).
And finally load the impulses into each channel. The values are in order: input, output, gain, delay, offset, length and channel. So the above simply apply a stereo IR to a pair of channels. Delay and offset can be used to shave of samples to get rid of any direct sound and making a signal completely wet (but I have so far not experimented with it). The parameter I tend to fiddle with is the response gain, usually the convoluted signal is far to weak in mixes (see next section) why I have to crank it up a notch unless you're using JConv as a processor (sending the complete signal through it, i.e. an insert) then you want the gain to be less than 1.0.
Mixing
The way I use JConv (and any reverb for that matter) is as a send effect. Meaning that I create a dedicated buss (I'm working in Ardour) where I create a pre-fader insert hooked up to JConv via JACK. I then create a post-fader send on every channel that will contribute to the reverbation.
This standard setup makes everything quite controllable. The amount each channel will contribute to the reverbation is controlled by the send fader of each channel (since I cranked the gain up in JConv leaving it at 0dB will result in the reverb being louder than the original sound) and the amount the reverb will contribute to the total mix is controlled by the reverb buss fader.
Of course, if you're working with dry sampled orchestra instruments reverbation is just one piece of the puzzle. The other two are panning (left and right, but usually never more than 20 steps in either direction) and EQing (simulating the distance of an instrument from the microphone) but that's a whole other story...
Download
JConv 0.2.0
Installation
As mentioned in the general "Reverb" topic, here's what you need to know to built it. The reason that the build fails is because jconv relies on a pre-release version of libsndfile that contain support for ambisonic file formats. The solution is to edit a single line in the Makefile so it looks like this:
Code: Select all
# Uncomment if you use a libsndfile version without support for setting/getting the Ambisonic flags.
CPPFLAGS += -DNOAMBIS=1
Usage
JConv is really easy to use. However, it does not come with any fancy GUI, instead it's usually run at the command line with a single argument pointing to the configuration file.
The configuration file has a simple syntax. Here's a example for my Prosoniq/Medium Spaces/Stage IR line by line.
Code: Select all
/cd /home/anders/Studio/ir/prosoniq/medium_spaces/
Code: Select all
/convolver/new 2 2 256 204800
Code: Select all
/impulse/read 1 1 4.0 0 0 0 1 stage.aiff
/impulse/read 2 2 4.0 0 0 0 2 stage.aiff
Mixing
The way I use JConv (and any reverb for that matter) is as a send effect. Meaning that I create a dedicated buss (I'm working in Ardour) where I create a pre-fader insert hooked up to JConv via JACK. I then create a post-fader send on every channel that will contribute to the reverbation.
This standard setup makes everything quite controllable. The amount each channel will contribute to the reverbation is controlled by the send fader of each channel (since I cranked the gain up in JConv leaving it at 0dB will result in the reverb being louder than the original sound) and the amount the reverb will contribute to the total mix is controlled by the reverb buss fader.
Of course, if you're working with dry sampled orchestra instruments reverbation is just one piece of the puzzle. The other two are panning (left and right, but usually never more than 20 steps in either direction) and EQing (simulating the distance of an instrument from the microphone) but that's a whole other story...