Configure FFmpeg Crystalizer Filter Expansion Factor
This article explains how to configure the expansion factor in the
FFmpeg crystalizer audio filter. You will learn how to
locate the correct parameter, understand its range of values, and apply
practical command-line examples to adjust the dynamic range of your
audio files.
In the FFmpeg crystalizer filter, the expansion factor
is controlled by the intensity (or
i) parameter. This filter expands the
dynamic range of audio, making quiet passages quieter and loud passages
louder, which can breathe life back into heavily compressed audio
tracks.
The Intensity Parameter Syntax
The basic syntax for applying the filter is:
crystalizer=intensity=valueOr using the shortform:
crystalizer=i=valueParameter Values and Behavior
- Default Value:
2.0 - Allowed Range:
-10.0to10.0 - Value of 0.0: Has no effect on the audio.
- Positive Values (0.1 to 10.0): Expands the dynamic range. Higher numbers increase the intensity of the expansion, making the audio sound sharper and more “crystalized.”
- Negative Values (-10.0 to -0.1): Reverses the process, narrowing the dynamic range.
Practical Command Examples
To apply an expansion factor of 3.0 to an audio file,
use the following command:
ffmpeg -i input.wav -af "crystalizer=i=3.0" output.wavManaging Clipping
Because expanding the dynamic range increases the volume of the
loudest peaks, it can cause digital clipping (distortion). The
crystalizer filter has a built-in clipping prevention
parameter (clip or c) enabled by default.
To explicitly enable clipping protection alongside a custom intensity
factor of 4.5, use:
ffmpeg -i input.mp3 -af "crystalizer=i=4.5:c=1" output.mp3Setting c=0 disables clipping prevention, which is only
recommended if you plan to manually lower the volume upstream using a
volume filter to prevent distortion.