#include <float.h>
#include "libavutil/opt.h"
#include "libavutil/timestamp.h"
#include "avfilter.h"
#include "internal.h"
Go to the source code of this file.
Data Structures | |
struct | BlackDetectContext |
Defines | |
#define | OFFSET(x) offsetof(BlackDetectContext, x) |
#define | FLAGS AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM |
#define | YUVJ_FORMATS PIX_FMT_YUVJ420P, PIX_FMT_YUVJ422P, PIX_FMT_YUVJ444P, PIX_FMT_YUVJ440P |
Functions | |
AVFILTER_DEFINE_CLASS (blackdetect) | |
static int | query_formats (AVFilterContext *ctx) |
static av_cold int | init (AVFilterContext *ctx, const char *args) |
static int | config_input (AVFilterLink *inlink) |
static void | check_black_end (AVFilterContext *ctx) |
static int | request_frame (AVFilterLink *outlink) |
static int | draw_slice (AVFilterLink *inlink, int y, int h, int slice_dir) |
static int | end_frame (AVFilterLink *inlink) |
Variables | |
static const AVOption | blackdetect_options [] |
static enum PixelFormat | yuvj_formats [] |
AVFilter | avfilter_vf_blackdetect |
Definition in file vf_blackdetect.c.
#define FLAGS AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM |
Definition at line 51 of file vf_blackdetect.c.
#define OFFSET | ( | x | ) | offsetof(BlackDetectContext, x) |
Definition at line 50 of file vf_blackdetect.c.
#define YUVJ_FORMATS PIX_FMT_YUVJ420P, PIX_FMT_YUVJ422P, PIX_FMT_YUVJ444P, PIX_FMT_YUVJ440P |
AVFILTER_DEFINE_CLASS | ( | blackdetect | ) |
static void check_black_end | ( | AVFilterContext * | ctx | ) | [static] |
static int config_input | ( | AVFilterLink * | inlink | ) | [static] |
Definition at line 99 of file vf_blackdetect.c.
static int draw_slice | ( | AVFilterLink * | inlink, | |
int | y, | |||
int | h, | |||
int | slice_dir | |||
) | [static] |
Definition at line 149 of file vf_blackdetect.c.
static int end_frame | ( | AVFilterLink * | inlink | ) | [static] |
Definition at line 166 of file vf_blackdetect.c.
static av_cold int init | ( | AVFilterContext * | ctx, | |
const char * | args | |||
) | [static] |
Definition at line 85 of file vf_blackdetect.c.
static int query_formats | ( | AVFilterContext * | ctx | ) | [static] |
Definition at line 72 of file vf_blackdetect.c.
static int request_frame | ( | AVFilterLink * | outlink | ) | [static] |
Definition at line 134 of file vf_blackdetect.c.
Initial value:
{ .name = "blackdetect", .description = NULL_IF_CONFIG_SMALL("Detect video intervals that are (almost) black."), .priv_size = sizeof(BlackDetectContext), .init = init, .query_formats = query_formats, .inputs = (const AVFilterPad[]) { { .name = "default", .type = AVMEDIA_TYPE_VIDEO, .config_props = config_input, .draw_slice = draw_slice, .get_video_buffer = ff_null_get_video_buffer, .start_frame = ff_null_start_frame, .end_frame = end_frame, }, { .name = NULL } }, .outputs = (const AVFilterPad[]) { { .name = "default", .type = AVMEDIA_TYPE_VIDEO, .request_frame = request_frame, }, { .name = NULL } }, .priv_class = &blackdetect_class, }
Definition at line 200 of file vf_blackdetect.c.
const AVOption blackdetect_options[] [static] |
Initial value:
{ { "d", "set minimum detected black duration in seconds", OFFSET(black_min_duration_time), AV_OPT_TYPE_DOUBLE, {.dbl=2}, 0, DBL_MAX, FLAGS }, { "black_min_duration", "set minimum detected black duration in seconds", OFFSET(black_min_duration_time), AV_OPT_TYPE_DOUBLE, {.dbl=2}, 0, DBL_MAX, FLAGS }, { "picture_black_ratio_th", "set the picture black ratio threshold", OFFSET(picture_black_ratio_th), AV_OPT_TYPE_DOUBLE, {.dbl=.98}, 0, 1, FLAGS }, { "pic_th", "set the picture black ratio threshold", OFFSET(picture_black_ratio_th), AV_OPT_TYPE_DOUBLE, {.dbl=.98}, 0, 1, FLAGS }, { "pixel_black_th", "set the pixel black threshold", OFFSET(pixel_black_th), AV_OPT_TYPE_DOUBLE, {.dbl=.10}, 0, 1, FLAGS }, { "pix_th", "set the pixel black threshold", OFFSET(pixel_black_th), AV_OPT_TYPE_DOUBLE, {.dbl=.10}, 0, 1, FLAGS }, { NULL }, }
Definition at line 53 of file vf_blackdetect.c.
enum PixelFormat yuvj_formats[] [static] |
Initial value:
{ YUVJ_FORMATS, PIX_FMT_NONE }
Definition at line 68 of file vf_blackdetect.c.
Referenced by config_input().