|
FFmpeg
|
EBU R.128 implementation. More...
#include <math.h>#include "libavutil/avassert.h"#include "libavutil/avstring.h"#include "libavutil/channel_layout.h"#include "libavutil/dict.h"#include "libavutil/ffmath.h"#include "libavutil/xga_font_data.h"#include "libavutil/opt.h"#include "libavutil/timestamp.h"#include "libswresample/swresample.h"#include "audio.h"#include "avfilter.h"#include "formats.h"#include "internal.h"Classes | |
| struct | hist_entry |
| A histogram is an array of HIST_SIZE hist_entry storing all the energies recorded (with an accuracy of 1/HIST_GRAIN) of the loudnesses from ABS_THRES (at 0) to ABS_UP_THRES (at HIST_SIZE-1). More... | |
| struct | integrator |
| struct | rect |
| struct | EBUR128Context |
Macros | |
| #define | MAX_CHANNELS 63 |
| #define | PRE_B0 1.53512485958697 |
| #define | PRE_B1 -2.69169618940638 |
| #define | PRE_B2 1.19839281085285 |
| #define | PRE_A1 -1.69065929318241 |
| #define | PRE_A2 0.73248077421585 |
| #define | RLB_B0 1.0 |
| #define | RLB_B1 -2.0 |
| #define | RLB_B2 1.0 |
| #define | RLB_A1 -1.99004745483398 |
| #define | RLB_A2 0.99007225036621 |
| #define | ABS_THRES -70 |
| silence gate: we discard anything below this absolute (LUFS) threshold | |
| #define | ABS_UP_THRES 10 |
| upper loud limit to consider (ABS_THRES being the minimum) | |
| #define | HIST_GRAIN 100 |
| defines histogram precision | |
| #define | HIST_SIZE ((ABS_UP_THRES - ABS_THRES) * HIST_GRAIN + 1) |
| #define | I400_BINS (48000 * 4 / 10) |
| #define | I3000_BINS (48000 * 3) |
| #define | OFFSET(x) offsetof(EBUR128Context, x) |
| #define | A AV_OPT_FLAG_AUDIO_PARAM |
| #define | V AV_OPT_FLAG_VIDEO_PARAM |
| #define | F AV_OPT_FLAG_FILTERING_PARAM |
| #define | FONT8 0 |
| #define | FONT16 1 |
| #define | PAD 8 |
| #define | DRAW_RECT(r) |
| #define | BACK_MASK |
| #define | ENERGY(loudness) (ff_exp10(((loudness) + 0.691) / 10.)) |
| #define | LOUDNESS(energy) (-0.691 + 10 * log10(energy)) |
| #define | DBFS(energy) (20 * log10(energy)) |
| #define | HIST_POS(power) (int)(((power) - ABS_THRES) * HIST_GRAIN) |
| #define | MOVE_TO_NEXT_CACHED_ENTRY(time) |
| #define | FILTER(Y, X, name) |
| #define | COMPUTE_LOUDNESS(m, time) |
| #define | I_GATE_THRES -10 |
| #define | LRA_GATE_THRES -20 |
| #define | LRA_LOWER_PRC 10 |
| #define | LRA_HIGHER_PRC 95 |
| #define | LOG_FMT "M:%6.1f S:%6.1f I:%6.1f LUFS LRA:%6.1f LU" |
| #define | META_PREFIX "lavfi.r128." |
| #define | SET_META(name, var) |
| #define | SET_META_PEAK(name, ptype) |
| #define | PRINT_PEAKS(str, sp, ptype) |
| #define | PRINT_PEAK_SUMMARY(str, sp, ptype) |
Typedefs | |
| typedef struct EBUR128Context | EBUR128Context |
Enumerations | |
| enum | { PEAK_MODE_NONE = 0, PEAK_MODE_SAMPLES_PEAKS = 1<<1, PEAK_MODE_TRUE_PEAKS = 1<<2 } |
Functions | |
| AVFILTER_DEFINE_CLASS (ebur128) | |
Variables | |
| AVFilter | ff_af_ebur128 |
EBU R.128 implementation.
implement start/stop/reset through filter command injection
support other frequencies to avoid resampling
| #define BACK_MASK |
| #define COMPUTE_LOUDNESS | ( | m, | |
| time | |||
| ) |
| #define DRAW_RECT | ( | r | ) |
| #define FILTER | ( | Y, | |
| X, | |||
| name | |||
| ) |
| #define MOVE_TO_NEXT_CACHED_ENTRY | ( | time | ) |
| #define PRINT_PEAK_SUMMARY | ( | str, | |
| sp, | |||
| ptype | |||
| ) |
| #define PRINT_PEAKS | ( | str, | |
| sp, | |||
| ptype | |||
| ) |
| #define SET_META | ( | name, | |
| var | |||
| ) |
| #define SET_META_PEAK | ( | name, | |
| ptype | |||
| ) |
| AVFilter ff_af_ebur128 |
1.8.12