FFmpeg
|
vf_fade.c File Reference
video fade filter based heavily on vf_negate.c by Bobby Bingham More...
#include "libavutil/avstring.h"
#include "libavutil/common.h"
#include "libavutil/eval.h"
#include "libavutil/opt.h"
#include "libavutil/pixdesc.h"
#include "avfilter.h"
#include "drawutils.h"
#include "internal.h"
#include "formats.h"
#include "video.h"
Include dependency graph for vf_fade.c:
Go to the source code of this file.
Data Structures | |
struct | FadeContext |
Macros | |
#define | R 0 |
#define | G 1 |
#define | B 2 |
#define | A 3 |
#define | Y 0 |
#define | U 1 |
#define | V 2 |
#define | FADE_IN 0 |
#define | FADE_OUT 1 |
#define | OFFSET(x) offsetof(FadeContext, x) |
#define | FLAGS AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM |
Functions | |
static av_cold int | init (AVFilterContext *ctx) |
static int | query_formats (AVFilterContext *ctx) |
static int | config_props (AVFilterLink *inlink) |
static void | fade_plane (int y, int h, int w, int fade_factor, int black_level, int black_level_scaled, uint8_t offset, uint8_t step, int bytes_per_plane, uint8_t *data, int line_size) |
static int | filter_frame (AVFilterLink *inlink, AVFrame *frame) |
AVFILTER_DEFINE_CLASS (fade) | |
Variables | |
static const enum AVPixelFormat | studio_level_pix_fmts [] |
static const AVOption | fade_options [] |
static const AVFilterPad | avfilter_vf_fade_inputs [] |
static const AVFilterPad | avfilter_vf_fade_outputs [] |
AVFilter | avfilter_vf_fade |
Detailed Description
video fade filter based heavily on vf_negate.c by Bobby Bingham
Definition in file vf_fade.c.
Macro Definition Documentation
#define A 3 |
Definition at line 43 of file vf_fade.c.
Referenced by filter_frame().
#define FLAGS AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM |
#define OFFSET | ( | x | ) | offsetof(FadeContext, x) |
Function Documentation
AVFILTER_DEFINE_CLASS | ( | fade | ) |
|
static |
|
static |
Definition at line 132 of file vf_fade.c.
Referenced by filter_frame().
|
static |
|
static |
|
static |
Variable Documentation
AVFilter avfilter_vf_fade |
Initial value:
= {
.name = "fade",
.description = NULL_IF_CONFIG_SMALL("Fade in/out input video."),
.init = init,
.priv_size = sizeof(FadeContext),
.priv_class = &fade_class,
}
static const AVFilterPad avfilter_vf_fade_outputs[]
Definition: vf_fade.c:235
Definition: vf_fade.c:52
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: libavutil/internal.h:123
these buffered frames must be flushed immediately if a new input produces new the filter must not call request_frame to get more It must just process the frame or queue it The task of requesting more frames is left to the filter s request_frame method or the application If a filter has several inputs
Definition: filter_design.txt:216
|
static |
Initial value:
= {
{
.name = "default",
.type = AVMEDIA_TYPE_VIDEO,
.config_props = config_props,
.get_video_buffer = ff_null_get_video_buffer,
.filter_frame = filter_frame,
.needs_writable = 1,
},
{ NULL }
}
AVFrame * ff_null_get_video_buffer(AVFilterLink *link, int w, int h)
Definition: video.c:35
Definition: avutil.h:143
|
static |
Initial value:
|
static |
Initial value:
= {
{ "type", "'in' or 'out' for fade-in/fade-out", OFFSET(type), AV_OPT_TYPE_INT, { .i64 = FADE_IN }, FADE_IN, FADE_OUT, FLAGS, "type" },
{ "t", "'in' or 'out' for fade-in/fade-out", OFFSET(type), AV_OPT_TYPE_INT, { .i64 = FADE_IN }, FADE_IN, FADE_OUT, FLAGS, "type" },
{ "start_frame", "Number of the first frame to which to apply the effect.",
{ "s", "Number of the first frame to which to apply the effect.",
{ "nb_frames", "Number of frames to which the effect should be applied.",
OFFSET(nb_frames), AV_OPT_TYPE_INT, { .i64 = 25 }, 0, INT_MAX, FLAGS },
{ "n", "Number of frames to which the effect should be applied.",
OFFSET(nb_frames), AV_OPT_TYPE_INT, { .i64 = 25 }, 0, INT_MAX, FLAGS },
{ "alpha", "fade alpha if it is available on the input", OFFSET(alpha), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, FLAGS },
{ NULL },
}
Definition: opt.h:222
Definition: opt.h:229
#define type
Note except for filters that can have queued request_frame does not push and as a the filter_frame method will be called and do the work Legacy the filter_frame method was it was made of start_frame
Definition: filter_design.txt:263
|
static |
Initial value:
= {
}
Definition: pixfmt.h:67
planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
Definition: pixfmt.h:73
planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
Definition: pixfmt.h:72
planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples)
Definition: pixfmt.h:74
planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
Definition: pixfmt.h:68
planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
Definition: pixfmt.h:75
Definition at line 104 of file vf_fade.c.
Referenced by config_props().
Generated on Mon Nov 18 2024 06:52:10 for FFmpeg by 1.8.11