Commit d2fc702a authored by Paul B Mahol's avatar Paul B Mahol

avfilter: add chorus filter

Signed-off-by: 's avatarPaul B Mahol <onemda@gmail.com>
parent 415f1fab
......@@ -16,6 +16,7 @@ version <next>:
- unpack DivX-style packed B-frames in MPEG-4 bitstream filter
- WebM Live Chunk Muxer
- nvenc level and tier options
- chorus filter
version 2.6:
......
......@@ -1320,6 +1320,61 @@ front_center.wav -map '[LFE]' lfe.wav -map '[SL]' side_left.wav -map '[SR]'
side_right.wav
@end example
@section chorus
Add a chorus effect to the audio.
Can make a single vocal sound like a chorus, but can also be applied to instrumentation.
Chorus resembles an echo effect with a short delay, but whereas with echo the delay is
constant, with chorus, it is varied using using sinusoidal or triangular modulation.
The modulation depth defines the range the modulated delay is played before or after
the delay. Hence the delayed sound will sound slower or faster, that is the delayed
sound tuned around the original one, like in a chorus where some vocals are slightly
off key.
It accepts the following parameters:
@table @option
@item in_gain
Set input gain. Default is 0.4.
@item out_gain
Set output gain. Default is 0.4.
@item delays
Set delays. A typical delay is around 40ms to 60ms.
@item decays
Set decays.
@item speeds
Set speeds.
@item depths
Set depths.
@end table
@subsection Examples
@itemize
@item
A single delay:
@example
chorus=0.7:0.9:55:0.4:0.25:2
@end example
@item
Two delays:
@example
chorus=0.6:0.9:50|60:0.4|0.32:0.25|0.4:2|1.3
@end example
@item
Fuller sounding chorus with three delays:
@example
chorus=0.5:0.9:50|60|40:0.4|0.32|0.3:0.25|0.4|0.3:2|2.3|1.3
@end example
@end itemize
@section compand
Compress or expand the audio's dynamic range.
......
......@@ -64,6 +64,7 @@ OBJS-$(CONFIG_BIQUAD_FILTER) += af_biquads.o
OBJS-$(CONFIG_BS2B_FILTER) += af_bs2b.o
OBJS-$(CONFIG_CHANNELMAP_FILTER) += af_channelmap.o
OBJS-$(CONFIG_CHANNELSPLIT_FILTER) += af_channelsplit.o
OBJS-$(CONFIG_CHORUS_FILTER) += af_chorus.o generate_wave_table.o
OBJS-$(CONFIG_COMPAND_FILTER) += af_compand.o
OBJS-$(CONFIG_DCSHIFT_FILTER) += af_dcshift.o
OBJS-$(CONFIG_EARWAX_FILTER) += af_earwax.o
......
This diff is collapsed.
......@@ -80,6 +80,7 @@ void avfilter_register_all(void)
REGISTER_FILTER(BS2B, bs2b, af);
REGISTER_FILTER(CHANNELMAP, channelmap, af);
REGISTER_FILTER(CHANNELSPLIT, channelsplit, af);
REGISTER_FILTER(CHORUS, chorus, af);
REGISTER_FILTER(COMPAND, compand, af);
REGISTER_FILTER(DCSHIFT, dcshift, af);
REGISTER_FILTER(EARWAX, earwax, af);
......
......@@ -30,8 +30,8 @@
#include "libavutil/version.h"
#define LIBAVFILTER_VERSION_MAJOR 5
#define LIBAVFILTER_VERSION_MINOR 13
#define LIBAVFILTER_VERSION_MICRO 101
#define LIBAVFILTER_VERSION_MINOR 14
#define LIBAVFILTER_VERSION_MICRO 100
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
LIBAVFILTER_VERSION_MINOR, \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment