Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
F
ffmpeg.wasm-core
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Linshizhi
ffmpeg.wasm-core
Commits
73afea3c
Commit
73afea3c
authored
Jul 24, 2019
by
Paul B Mahol
Committed by
Kieran Kunhya
Jul 24, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
avfilter/af_dynaudnorm: add more descriptive aliases for options
parent
a081a6d2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
27 additions
and
18 deletions
+27
-18
filters.texi
doc/filters.texi
+9
-9
af_dynaudnorm.c
libavfilter/af_dynaudnorm.c
+18
-9
No files found.
doc/filters.texi
View file @
73afea3c
...
...
@@ -3135,7 +3135,7 @@ this goal *without* applying "dynamic range compressing". It will retain 100%
of
the
dynamic
range
*
within
*
each
section
of
the
audio
file
.
@
table
@
option
@
item
f
@
item
f
ramelen
,
f
Set
the
frame
length
in
milliseconds
.
In
range
from
10
to
8000
milliseconds
.
Default
is
500
milliseconds
.
The
Dynamic
Audio
Normalizer
processes
the
input
audio
in
small
chunks
,
...
...
@@ -3150,7 +3150,7 @@ been found to give good results with most files.
Note
that
the
exact
frame
length
,
in
number
of
samples
,
will
be
determined
automatically
,
based
on
the
sampling
rate
of
the
individual
input
audio
file
.
@
item
g
@
item
g
ausssize
,
g
Set
the
Gaussian
filter
window
size
.
In
range
from
3
to
301
,
must
be
odd
number
.
Default
is
31.
Probably
the
most
important
parameter
of
the
Dynamic
Audio
Normalizer
is
the
...
...
@@ -3167,7 +3167,7 @@ Normalizer will behave like a "traditional" normalization filter. On the
contrary, the more you decrease this value, the more the Dynamic Audio
Normalizer will behave like a dynamic range compressor.
@item p
@item p
eak, p
Set the target peak value. This specifies the highest permissible magnitude
level for the normalized audio input. This filter will try to approach the
target peak magnitude as closely as possible, but at the same time it also
...
...
@@ -3176,7 +3176,7 @@ A frame's maximum local gain factor is imposed directly by the target peak
magnitude
.
The
default
value
is
0.95
and
thus
leaves
a
headroom
of
5
%*.
It
is
not
recommended
to
go
above
this
value
.
@
item
m
@
item
m
axgain
,
m
Set
the
maximum
gain
factor
.
In
range
from
1.0
to
100.0
.
Default
is
10.0
.
The
Dynamic
Audio
Normalizer
determines
the
maximum
possible
(
local
)
gain
factor
for
each
input
frame
,
i
.
e
.
the
maximum
gain
factor
that
does
not
...
...
@@ -3194,7 +3194,7 @@ Instead, a "sigmoid" threshold function will be applied. This way, the
gain
factors
will
smoothly
approach
the
threshold
value
,
but
never
exceed
that
value
.
@
item
r
@
item
targetrms
,
r
Set
the
target
RMS
.
In
range
from
0.0
to
1.0
.
Default
is
0.0
-
disabled
.
By
default
,
the
Dynamic
Audio
Normalizer
performs
"peak"
normalization
.
This
means
that
the
maximum
local
gain
factor
for
each
frame
is
defined
...
...
@@ -3212,7 +3212,7 @@ factor is defined as the factor that would result in exactly that RMS value.
Note
,
however
,
that
the
maximum
local
gain
factor
is
still
restricted
by
the
frame
's highest magnitude sample, in order to prevent clipping.
@item n
@item
coupling,
n
Enable channels coupling. By default is enabled.
By default, the Dynamic Audio Normalizer will amplify all channels by the same
amount. This means the same gain factor will be applied to all channels, i.e.
...
...
@@ -3224,7 +3224,7 @@ the gain factor will be determined independently for each channel, depending
only on the individual channel'
s
highest
magnitude
sample
.
This
allows
for
harmonizing
the
volume
of
the
different
channels
.
@
item
c
@
item
c
orrectdc
,
c
Enable
DC
bias
correction
.
By
default
is
disabled
.
An
audio
signal
(
in
the
time
domain
)
is
a
sequence
of
sample
values
.
In
the
Dynamic
Audio
Normalizer
these
sample
values
are
represented
in
the
...
...
@@ -3243,7 +3243,7 @@ are centered around 0.0 again. Also, in order to avoid "gaps" at the frame
boundaries, the DC correction offset values will be interpolated smoothly
between neighbouring frames.
@item b
@item
altboundary,
b
Enable alternative boundary mode. By default is disabled.
The Dynamic Audio Normalizer takes into account a certain neighbourhood
around each frame. This includes the preceding frames as well as the
...
...
@@ -3258,7 +3258,7 @@ to deal with this situation. The default boundary mode assumes a gain factor
of exactly 1.0 for the missing frames, resulting in a smooth "fade in" and
"fade out" at the beginning and at the end of the input, respectively.
@item s
@item
compress,
s
Set the compress factor. In range from 0.0 to 30.0. Default is 0.0.
By default, the Dynamic Audio Normalizer does not apply "traditional"
compression. This means that signal peaks will not be pruned and thus the
...
...
libavfilter/af_dynaudnorm.c
View file @
73afea3c
...
...
@@ -82,15 +82,24 @@ typedef struct DynamicAudioNormalizerContext {
#define FLAGS AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
static
const
AVOption
dynaudnorm_options
[]
=
{
{
"f"
,
"set the frame length in msec"
,
OFFSET
(
frame_len_msec
),
AV_OPT_TYPE_INT
,
{.
i64
=
500
},
10
,
8000
,
FLAGS
},
{
"g"
,
"set the filter size"
,
OFFSET
(
filter_size
),
AV_OPT_TYPE_INT
,
{.
i64
=
31
},
3
,
301
,
FLAGS
},
{
"p"
,
"set the peak value"
,
OFFSET
(
peak_value
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
0
.
95
},
0
.
0
,
1
.
0
,
FLAGS
},
{
"m"
,
"set the max amplification"
,
OFFSET
(
max_amplification
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
10
.
0
},
1
.
0
,
100
.
0
,
FLAGS
},
{
"r"
,
"set the target RMS"
,
OFFSET
(
target_rms
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
0
.
0
},
0
.
0
,
1
.
0
,
FLAGS
},
{
"n"
,
"set channel coupling"
,
OFFSET
(
channels_coupled
),
AV_OPT_TYPE_BOOL
,
{.
i64
=
1
},
0
,
1
,
FLAGS
},
{
"c"
,
"set DC correction"
,
OFFSET
(
dc_correction
),
AV_OPT_TYPE_BOOL
,
{.
i64
=
0
},
0
,
1
,
FLAGS
},
{
"b"
,
"set alternative boundary mode"
,
OFFSET
(
alt_boundary_mode
),
AV_OPT_TYPE_BOOL
,
{.
i64
=
0
},
0
,
1
,
FLAGS
},
{
"s"
,
"set the compress factor"
,
OFFSET
(
compress_factor
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
0
.
0
},
0
.
0
,
30
.
0
,
FLAGS
},
{
"framelen"
,
"set the frame length in msec"
,
OFFSET
(
frame_len_msec
),
AV_OPT_TYPE_INT
,
{.
i64
=
500
},
10
,
8000
,
FLAGS
},
{
"f"
,
"set the frame length in msec"
,
OFFSET
(
frame_len_msec
),
AV_OPT_TYPE_INT
,
{.
i64
=
500
},
10
,
8000
,
FLAGS
},
{
"gausssize"
,
"set the filter size"
,
OFFSET
(
filter_size
),
AV_OPT_TYPE_INT
,
{.
i64
=
31
},
3
,
301
,
FLAGS
},
{
"g"
,
"set the filter size"
,
OFFSET
(
filter_size
),
AV_OPT_TYPE_INT
,
{.
i64
=
31
},
3
,
301
,
FLAGS
},
{
"peak"
,
"set the peak value"
,
OFFSET
(
peak_value
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
0
.
95
},
0
.
0
,
1
.
0
,
FLAGS
},
{
"p"
,
"set the peak value"
,
OFFSET
(
peak_value
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
0
.
95
},
0
.
0
,
1
.
0
,
FLAGS
},
{
"maxgain"
,
"set the max amplification"
,
OFFSET
(
max_amplification
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
10
.
0
},
1
.
0
,
100
.
0
,
FLAGS
},
{
"m"
,
"set the max amplification"
,
OFFSET
(
max_amplification
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
10
.
0
},
1
.
0
,
100
.
0
,
FLAGS
},
{
"targetrms"
,
"set the target RMS"
,
OFFSET
(
target_rms
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
0
.
0
},
0
.
0
,
1
.
0
,
FLAGS
},
{
"r"
,
"set the target RMS"
,
OFFSET
(
target_rms
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
0
.
0
},
0
.
0
,
1
.
0
,
FLAGS
},
{
"coupling"
,
"set channel coupling"
,
OFFSET
(
channels_coupled
),
AV_OPT_TYPE_BOOL
,
{.
i64
=
1
},
0
,
1
,
FLAGS
},
{
"n"
,
"set channel coupling"
,
OFFSET
(
channels_coupled
),
AV_OPT_TYPE_BOOL
,
{.
i64
=
1
},
0
,
1
,
FLAGS
},
{
"correctdc"
,
"set DC correction"
,
OFFSET
(
dc_correction
),
AV_OPT_TYPE_BOOL
,
{.
i64
=
0
},
0
,
1
,
FLAGS
},
{
"c"
,
"set DC correction"
,
OFFSET
(
dc_correction
),
AV_OPT_TYPE_BOOL
,
{.
i64
=
0
},
0
,
1
,
FLAGS
},
{
"altboundary"
,
"set alternative boundary mode"
,
OFFSET
(
alt_boundary_mode
),
AV_OPT_TYPE_BOOL
,
{.
i64
=
0
},
0
,
1
,
FLAGS
},
{
"b"
,
"set alternative boundary mode"
,
OFFSET
(
alt_boundary_mode
),
AV_OPT_TYPE_BOOL
,
{.
i64
=
0
},
0
,
1
,
FLAGS
},
{
"compress"
,
"set the compress factor"
,
OFFSET
(
compress_factor
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
0
.
0
},
0
.
0
,
30
.
0
,
FLAGS
},
{
"s"
,
"set the compress factor"
,
OFFSET
(
compress_factor
),
AV_OPT_TYPE_DOUBLE
,
{.
dbl
=
0
.
0
},
0
.
0
,
30
.
0
,
FLAGS
},
{
NULL
}
};
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment