Extreme Effect - Detailed Info

Loading / saving configuration

You can load/save entire configuration including effect matrix and other settings, or load/save only the active (playing) channel. This depends on which you've chosen in the menu. The default working directory is ~./ExEf.

Audio Settings

You can select the proper sampling frequency as well as the buffer's length. Both values determine the input-output delay given by

td = 2N/fs,

N is buffer's length, fs is the sampling frequency. Lower td may cause more dropouts. See how to minimize dropouts.

Update effects

This updates preset effect files automatically. It copies them from /usr/share/ExEf/configs as explained in Presets. Useful when you install new presets.

Load Audio File

This is a new feature, which allows you to post-process a previously recorded sound file. You can record the input stream during playing with an effect, and then process the file with another effect! You hear the sound online while changing the effects to your taste. After the file has finished, ExEf plays as usual. This feature can be used powerfully even from command line. The format must be 16 bit mono, the ExEf's sampling frequency is used.

Standard Blocks

VU meters

The first options for both VU meters is the power estimation time (something like falloff time) in milliseconds. The second slider determines the refresh rate. The indicator is refreshed each N fragments. Note that fast refresh may cause more dropouts.

Output switch

There is only one parameter, switching time constant. Use low values for instant channel switching, higher values are intended for fluent fading in/out.

Recording unit

Yes, it's possible to record the processed output signal! Now it's also possible to record the input signal for post processing! When you press the Record button, you will have to select the output file. ExEf records .wav files.

When selected the file, recording starts. It is stored in RAM. It can be paused. The file is written to disk when you stop recording, either by pressing the Stop button or terminating the program. When recording is in progress, some buttons in ExEf are disabled.

Finally there is a setting button, use it only if you still hear dropouts.


You can record even without GUI. You have to edit the line

SaveWave 0 3 start.wav

in the config file currently used. It should be

SaveWave 1 3 filename.wav

Terminating the program (CTRL+C) saves the output to disk.

When you start hearing too many dropouts, stop recording - you have run out of RAM.

Recording in superuser mode is not recommended!


To understand this chapter, download and try some presets.

A box looks like the this:

When pressing the Settings button in a box, a new window appears. This window contains control elements. Each window has a number for indicating the x and y coordinates in the matrix.


A very simple amplifier, with gain in dB.


1st order filter, type low/high pass. Frequency in halftones and Hz determines the -3dB cut off frequency. Stopband gain is in dB.


2nd order filter, type low/high pass or equalizer.

Low/high pass
Frequency in halftones and Hz determines the cut off frequency. The gain at that frequency is (Q factor) dB - it's useful for simulating resonance. Stopband gain is in dB.

Frequency in halftones and Hz determines the resonant frequency. The gain at that that frequency is in dB. The Q factor in dB determines the passband width - higher values make it narrower.


This effect uses a mathematical function to distort the input signal. The function is selected separately for positive and negative input signals.


This effect tries to lower the input signal one octave down. The slider determines gain of the direct (non-lowered) signal.


This function implements three kinds of modulation: amplitude, frequency and phase modulations. The meaning of sliders is obvious.
When using frequency modulation, a kind of phaser effect can be obtained by adjusting the ParaDir slider to about zero.
When using phase modulation, a kind of wah-wah effect can be obtained by adjusting the ParaDir slider to about zero.


Simple implementation of delay. It models two parallel walls. The parameters are:

Predelay - the distance between the source and the listener,
X1, X2 - distances of the source to the walls,
R1, R2 - reflection factors at the walls in dB,
Output - delayed signal gain.


Simple model of a 3D room. The parameters are:

Predelay - the distance between the source and the listener,
X1, X2, X3 - length, width, height of the hall,
R1, R2, R3 - reflection factors at the walls in dB,
Output - delayed signal gain.


This emulates diffuse reverb. The parameters are:

Order - it's the amount of random reflections in a period,
Filter length - the total time of these random reflections,
Predelay - time between input and coming reflections,
Decay time - time when the reflections are 1/e of the original,
Feedback time - time when the reflections are coming back again,
Feedback - attenuation of these repeated reflections,
Output - delayed signal gain.


Use this function for more coarse quantization. It can be useful when the input is only very little noised. Also useful as a kind of distortion.


This effect lowers the dynamics of the signal. This is useful e.g. when using a microphone.
The parameters are:

Threshold - level above which the signal is compressed,
Compression - output decibels per each 10 input decibels,
Attack - how fast it reacts to signal increase,
Decay - how fast it reacts to signal decrease.

Noise Gate

A function suppressing noise in intervals without useful signal. It is closed for signals weaker than a threshold but open for stronger ones. Sliders:

Threshold - input level threshold in dB,
Power Saturation - effect of strong signals is decreased by limiting their estimated power. Use lower values for signals with fast level changes.
Attack - how fast it reacts to signal increase,
Decay - how fast it reacts to signal decrease.

Spectral Subtraction

Another noise suppresing function. It suppresses any weak quasi-stationary signals, e.g. noises or interferences, in the frequency domain. Therefore this function is very time-consuming, it should be used in only one box. See also Copy to next column. The parameters of the function are the following:

Threshold - threshold input power in dB. This determines what is considered as noise.
Noise estimation time - time constant for estimating the noise spectrum. Use higher values for slower changes of noise. Higher values give better results.
Estimation end - Obvious. Sometimes the noise is well stationary, therefore it's enough to estimate it at the beginning. Any time you move the slider the estimation is repeated and lasts till the desired time. Use infinite estimation for time-varying noises.


This is a sinewave generator. The frequency is in musical halftones and Hz, it's usable as a guitar tuner or as a precise generator. As known, 440 Hz is the frequency of A4.
The second slider determines the input signal gain.

White Noise

This is a white noise generator. It creates noise with uniform power spectral density. The slider determines the direct input signal gain.

Copy to next column

This function simply copies the signal to the beginning of the next column. It has three main purposes:
If the channels should do similar functions, e.g. you can create a nice sound in the first, copy it to the next one and modify it here slightly, e.g. by adding a phaser effect.
To save process time, e.g. by using Spectral Subtraction only in the first column and copying its output to the beginning of the next branch(column).
The third use is when a signal branch needs to be longer than ten boxes. Simply copy the output of the last box to the beginning of the next branch.

To Input VU

This is usable to measure level at a point different from the direct output. For example, if your soundcard has a significant DC level, this causes to show much higher input level than it really is, even when there is almost no signal. Use this box after a pure 20 Hz high pass and you get the level of the AC component of the signal. This way you get a better view of the real strength of the input signal.