FFmpeg Chorus Filter: How to Apply to Vocals
Adding a chorus effect to a vocal track can make it sound wider,
richer, and more professional by simulating multiple voices singing in
unison. This guide will show you how to use FFmpeg’s built-in
chorus audio filter to apply this effect to your vocal
tracks, detailing the command-line syntax and explaining key parameters
to help you customize the sound.
The Basic FFmpeg Chorus Command
To apply a basic chorus filter to an audio file, you use the
-af (audio filter) flag followed by the chorus
parameter. Here is a standard template command:
ffmpeg -i input.wav -af "chorus=0.5:0.9:50:0.4:0.25:2" output.wavParameter Breakdown
The chorus filter syntax is structured as follows:
chorus=decay_in:decay_out:delay:decay:speed:depth[:delay:decay:speed:depth...]
- decay_in (0.5): Sets the input gain (volume of the original dry signal).
- decay_out (0.9): Sets the output gain (volume of the wet, affected signal).
- delay (50): The delay in milliseconds. For vocals, a delay between 20ms and 60ms works best.
- decay (0.4): The volume decay of the delayed signal.
- speed (0.25): The modulation speed in Hz. Lower values (under 1 Hz) create a subtle, natural chorus, while higher values create a vibrato effect.
- depth (2): The modulation depth in milliseconds, which determines how much the delay time varies.
Creating a Rich, Multi-Voice Chorus
To create a lush, thick chorus effect, you can add more “voices” by
appending extra sets of delay:decay:speed:depth parameters
separated by colons.
Here is a command that simulates a three-voice chorus:
ffmpeg -i input.wav -af "chorus=0.6:0.9:50:0.4:0.25:2:60:0.32:0.4:2.3:40:0.3:0.3:1.5" output.wavIn this command: * Voice 1: Delay of 50ms, decay of 0.4, speed of 0.25Hz, depth of 2ms. * Voice 2: Delay of 60ms, decay of 0.32, speed of 0.4Hz, depth of 2.3ms. * Voice 3: Delay of 40ms, decay of 0.3, speed of 0.3Hz, depth of 1.5ms.
Varying the delays and modulation speeds slightly for each voice prevents phase cancellation and creates a much more natural, spacious stereo feel.