#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().
1.5.8