#include "libavutil/imgutils.h"
#include "libavutil/opt.h"
#include "libavutil/pixdesc.h"
#include "avfilter.h"
Go to the source code of this file.
Data Structures | |
struct | DelogoContext |
Defines | |
#define | OFFSET(x) offsetof(DelogoContext, x) |
#define | CHECK_UNSET_OPT(opt) |
Functions | |
static void | apply_delogo (uint8_t *dst, int dst_linesize, uint8_t *src, int src_linesize, int w, int h, int logo_x, int logo_y, int logo_w, int logo_h, int band, int show, int direct) |
Apply a simple delogo algorithm to the image in dst and put the result in src. | |
static const char * | delogo_get_name (void *ctx) |
static int | query_formats (AVFilterContext *ctx) |
static av_cold int | init (AVFilterContext *ctx, const char *args, void *opaque) |
static void | start_frame (AVFilterLink *inlink, AVFilterBufferRef *inpicref) |
static void | null_draw_slice (AVFilterLink *link, int y, int h, int slice_dir) |
static void | end_frame (AVFilterLink *inlink) |
Variables | |
static const AVOption | delogo_options [] |
static const AVClass | delogo_class |
AVFilter | avfilter_vf_delogo |
Definition in file vf_delogo.c.
#define CHECK_UNSET_OPT | ( | opt | ) |
Value:
if (delogo->opt == -1) { \ av_log(delogo, AV_LOG_ERROR, "Option %s was not set.\n", #opt); \ return AVERROR(EINVAL); \ }
Referenced by init().
#define OFFSET | ( | x | ) | offsetof(DelogoContext, x) |
Definition at line 138 of file vf_delogo.c.
static void apply_delogo | ( | uint8_t * | dst, | |
int | dst_linesize, | |||
uint8_t * | src, | |||
int | src_linesize, | |||
int | w, | |||
int | h, | |||
int | logo_x, | |||
int | logo_y, | |||
int | logo_w, | |||
int | logo_h, | |||
int | band, | |||
int | show, | |||
int | direct | |||
) | [static] |
Apply a simple delogo algorithm to the image in dst and put the result in src.
The algorithm is only applied to the region specified by the logo parameters.
w | width of the input image | |
h | height of the input image | |
logo_x | x coordinate of the top left corner of the logo region | |
logo_y | y coordinate of the top left corner of the logo region | |
logo_w | width of the logo | |
logo_h | height of the logo | |
band | the size of the band around the processed area | |
show | show a rectangle around the processed area, useful for parameters tweaking | |
direct | if non-zero perform in-place processing |
Definition at line 51 of file vf_delogo.c.
Referenced by end_frame().
static const char* delogo_get_name | ( | void * | ctx | ) | [static] |
Definition at line 151 of file vf_delogo.c.
static void end_frame | ( | AVFilterLink * | inlink | ) | [static] |
Definition at line 238 of file vf_delogo.c.
static av_cold int init | ( | AVFilterContext * | ctx, | |
const char * | args, | |||
void * | opaque | |||
) | [static] |
Definition at line 175 of file vf_delogo.c.
static void null_draw_slice | ( | AVFilterLink * | link, | |
int | y, | |||
int | h, | |||
int | slice_dir | |||
) | [static] |
Definition at line 236 of file vf_delogo.c.
static int query_formats | ( | AVFilterContext * | ctx | ) | [static] |
Definition at line 162 of file vf_delogo.c.
static void start_frame | ( | AVFilterLink * | inlink, | |
AVFilterBufferRef * | inpicref | |||
) | [static] |
Definition at line 218 of file vf_delogo.c.
Initial value:
{ .name = "delogo", .description = NULL_IF_CONFIG_SMALL("Remove logo from input video."), .priv_size = sizeof(DelogoContext), .init = init, .query_formats = query_formats, .inputs = (const AVFilterPad[]) {{ .name = "default", .type = AVMEDIA_TYPE_VIDEO, .get_video_buffer = avfilter_null_get_video_buffer, .start_frame = start_frame, .draw_slice = null_draw_slice, .end_frame = end_frame, .min_perms = AV_PERM_WRITE | AV_PERM_READ, .rej_perms = AV_PERM_PRESERVE }, { .name = NULL}}, .outputs = (const AVFilterPad[]) {{ .name = "default", .type = AVMEDIA_TYPE_VIDEO, }, { .name = NULL}}, }
Definition at line 269 of file vf_delogo.c.
const AVClass delogo_class [static] |
Initial value:
{ .class_name = "DelogoContext", .item_name = delogo_get_name, .option = delogo_options, }
Definition at line 156 of file vf_delogo.c.
const AVOption delogo_options[] [static] |
Initial value:
{ {"x", "set logo x position", OFFSET(x), AV_OPT_TYPE_INT, {.dbl=-1}, -1, INT_MAX }, {"y", "set logo y position", OFFSET(y), AV_OPT_TYPE_INT, {.dbl=-1}, -1, INT_MAX }, {"w", "set logo width", OFFSET(w), AV_OPT_TYPE_INT, {.dbl=-1}, -1, INT_MAX }, {"h", "set logo height", OFFSET(h), AV_OPT_TYPE_INT, {.dbl=-1}, -1, INT_MAX }, {"band", "set delogo area band size", OFFSET(band), AV_OPT_TYPE_INT, {.dbl= 4}, -1, INT_MAX }, {"t", "set delogo area band size", OFFSET(band), AV_OPT_TYPE_INT, {.dbl= 4}, -1, INT_MAX }, {"show", "show delogo area", OFFSET(show), AV_OPT_TYPE_INT, {.dbl= 0}, 0, 1 }, {NULL}, }
Definition at line 140 of file vf_delogo.c.