mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-24 13:56:33 +02:00
lavfi: remove avfilter_null_* from public API on next bump.
Those functions are only useful inside filters. It is better to not support user filters until the API is more stable.
This commit is contained in:
parent
43c7a01e98
commit
c04c533f62
@ -487,18 +487,24 @@ int avfilter_default_query_formats(AVFilterContext *ctx);
|
||||
*/
|
||||
void avfilter_set_common_formats(AVFilterContext *ctx, AVFilterFormats *formats);
|
||||
|
||||
#if FF_API_FILTERS_PUBLIC
|
||||
/** start_frame() handler for filters which simply pass video along */
|
||||
attribute_deprecated
|
||||
void avfilter_null_start_frame(AVFilterLink *link, AVFilterBufferRef *picref);
|
||||
|
||||
/** draw_slice() handler for filters which simply pass video along */
|
||||
attribute_deprecated
|
||||
void avfilter_null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir);
|
||||
|
||||
/** end_frame() handler for filters which simply pass video along */
|
||||
attribute_deprecated
|
||||
void avfilter_null_end_frame(AVFilterLink *link);
|
||||
|
||||
/** get_video_buffer() handler for filters which simply pass video along */
|
||||
attribute_deprecated
|
||||
AVFilterBufferRef *avfilter_null_get_video_buffer(AVFilterLink *link,
|
||||
int perms, int w, int h);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Filter definition. This defines the pads a filter contains, and all the
|
||||
|
@ -25,6 +25,7 @@
|
||||
|
||||
#include "avfilter.h"
|
||||
#include "audio.h"
|
||||
#include "video.h"
|
||||
|
||||
static int split_init(AVFilterContext *ctx, const char *args, void *opaque)
|
||||
{
|
||||
@ -100,7 +101,7 @@ AVFilter avfilter_vf_split = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer= avfilter_null_get_video_buffer,
|
||||
.get_video_buffer= ff_null_get_video_buffer,
|
||||
.start_frame = start_frame,
|
||||
.draw_slice = draw_slice,
|
||||
.end_frame = end_frame, },
|
||||
|
@ -25,6 +25,7 @@
|
||||
|
||||
#include "libavutil/mathematics.h"
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
typedef struct {
|
||||
AVRational aspect;
|
||||
@ -100,9 +101,9 @@ AVFilter avfilter_vf_setdar = {
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.config_props = setdar_config_props,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = start_frame,
|
||||
.end_frame = avfilter_null_end_frame },
|
||||
.end_frame = ff_null_end_frame },
|
||||
{ .name = NULL}},
|
||||
|
||||
.outputs = (AVFilterPad[]) {{ .name = "default",
|
||||
@ -133,9 +134,9 @@ AVFilter avfilter_vf_setsar = {
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.config_props = setsar_config_props,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = start_frame,
|
||||
.end_frame = avfilter_null_end_frame },
|
||||
.end_frame = ff_null_end_frame },
|
||||
{ .name = NULL}},
|
||||
|
||||
.outputs = (AVFilterPad[]) {{ .name = "default",
|
||||
|
@ -28,6 +28,7 @@
|
||||
*/
|
||||
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
typedef struct {
|
||||
unsigned int bamount; ///< black amount
|
||||
@ -118,8 +119,8 @@ AVFilter avfilter_vf_blackframe = {
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.draw_slice = draw_slice,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.start_frame = avfilter_null_start_frame,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = ff_null_start_frame,
|
||||
.end_frame = end_frame, },
|
||||
{ .name = NULL}},
|
||||
|
||||
|
@ -22,6 +22,7 @@
|
||||
*/
|
||||
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
AVFilter avfilter_vf_copy = {
|
||||
.name = "copy",
|
||||
@ -29,9 +30,9 @@ AVFilter avfilter_vf_copy = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.start_frame = avfilter_null_start_frame,
|
||||
.end_frame = avfilter_null_end_frame,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = ff_null_start_frame,
|
||||
.end_frame = ff_null_end_frame,
|
||||
.rej_perms = ~0 },
|
||||
{ .name = NULL}},
|
||||
.outputs = (AVFilterPad[]) {{ .name = "default",
|
||||
|
@ -26,6 +26,7 @@
|
||||
/* #define DEBUG */
|
||||
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
#include "libavutil/eval.h"
|
||||
#include "libavutil/avstring.h"
|
||||
#include "libavutil/libm.h"
|
||||
@ -333,7 +334,7 @@ AVFilter avfilter_vf_crop = {
|
||||
.start_frame = start_frame,
|
||||
.draw_slice = draw_slice,
|
||||
.end_frame = end_frame,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.config_props = config_input, },
|
||||
{ .name = NULL}},
|
||||
.outputs = (AVFilterPad[]) {{ .name = "default",
|
||||
|
@ -25,6 +25,7 @@
|
||||
|
||||
#include "libavutil/imgutils.h"
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
typedef struct {
|
||||
int x1, y1, x2, y2;
|
||||
@ -203,8 +204,8 @@ AVFilter avfilter_vf_cropdetect = {
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.config_props = config_input,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.start_frame = avfilter_null_start_frame,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = ff_null_start_frame,
|
||||
.end_frame = end_frame, },
|
||||
{ .name = NULL}},
|
||||
|
||||
|
@ -29,6 +29,7 @@
|
||||
#include "libavutil/opt.h"
|
||||
#include "libavutil/pixdesc.h"
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
/**
|
||||
* Apply a simple delogo algorithm to the image in dst and put the
|
||||
@ -271,7 +272,7 @@ AVFilter avfilter_vf_delogo = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = start_frame,
|
||||
.draw_slice = null_draw_slice,
|
||||
.end_frame = end_frame,
|
||||
|
@ -28,6 +28,7 @@
|
||||
#include "libavutil/pixdesc.h"
|
||||
#include "libavutil/parseutils.h"
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
enum { Y, U, V, A };
|
||||
|
||||
@ -130,10 +131,10 @@ AVFilter avfilter_vf_drawbox = {
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.config_props = config_input,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.start_frame = avfilter_null_start_frame,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = ff_null_start_frame,
|
||||
.draw_slice = draw_slice,
|
||||
.end_frame = avfilter_null_end_frame,
|
||||
.end_frame = ff_null_end_frame,
|
||||
.min_perms = AV_PERM_WRITE | AV_PERM_READ,
|
||||
.rej_perms = AV_PERM_PRESERVE },
|
||||
{ .name = NULL}},
|
||||
|
@ -41,6 +41,7 @@
|
||||
#include "libavutil/lfg.h"
|
||||
#include "avfilter.h"
|
||||
#include "drawutils.h"
|
||||
#include "video.h"
|
||||
|
||||
#undef time
|
||||
|
||||
@ -875,7 +876,7 @@ AVFilter avfilter_vf_drawtext = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = start_frame,
|
||||
.draw_slice = null_draw_slice,
|
||||
.end_frame = end_frame,
|
||||
|
@ -27,6 +27,7 @@
|
||||
|
||||
#include "libavutil/pixdesc.h"
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
typedef struct {
|
||||
int factor, fade_per_frame;
|
||||
@ -157,8 +158,8 @@ AVFilter avfilter_vf_fade = {
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.config_props = config_props,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.start_frame = avfilter_null_start_frame,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = ff_null_start_frame,
|
||||
.draw_slice = draw_slice,
|
||||
.end_frame = end_frame,
|
||||
.min_perms = AV_PERM_READ | AV_PERM_WRITE,
|
||||
|
@ -24,6 +24,7 @@
|
||||
*/
|
||||
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
typedef struct BufPic {
|
||||
AVFilterBufferRef *picref;
|
||||
@ -106,7 +107,7 @@ AVFilter avfilter_vf_fifo = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer= avfilter_null_get_video_buffer,
|
||||
.get_video_buffer= ff_null_get_video_buffer,
|
||||
.start_frame = start_frame,
|
||||
.draw_slice = draw_slice,
|
||||
.end_frame = end_frame,
|
||||
|
@ -25,6 +25,7 @@
|
||||
|
||||
#include "libavutil/pixdesc.h"
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
typedef struct {
|
||||
/**
|
||||
@ -104,10 +105,10 @@ AVFilter avfilter_vf_format = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer= avfilter_null_get_video_buffer,
|
||||
.start_frame = avfilter_null_start_frame,
|
||||
.draw_slice = avfilter_null_draw_slice,
|
||||
.end_frame = avfilter_null_end_frame, },
|
||||
.get_video_buffer= ff_null_get_video_buffer,
|
||||
.start_frame = ff_null_start_frame,
|
||||
.draw_slice = ff_null_draw_slice,
|
||||
.end_frame = ff_null_end_frame, },
|
||||
{ .name = NULL}},
|
||||
.outputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO },
|
||||
@ -134,10 +135,10 @@ AVFilter avfilter_vf_noformat = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer= avfilter_null_get_video_buffer,
|
||||
.start_frame = avfilter_null_start_frame,
|
||||
.draw_slice = avfilter_null_draw_slice,
|
||||
.end_frame = avfilter_null_end_frame, },
|
||||
.get_video_buffer= ff_null_get_video_buffer,
|
||||
.start_frame = ff_null_start_frame,
|
||||
.draw_slice = ff_null_draw_slice,
|
||||
.end_frame = ff_null_end_frame, },
|
||||
{ .name = NULL}},
|
||||
.outputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO },
|
||||
|
@ -22,6 +22,7 @@
|
||||
*/
|
||||
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
AVFilter avfilter_vf_null = {
|
||||
.name = "null",
|
||||
@ -31,9 +32,9 @@ AVFilter avfilter_vf_null = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.start_frame = avfilter_null_start_frame,
|
||||
.end_frame = avfilter_null_end_frame },
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = ff_null_start_frame,
|
||||
.end_frame = ff_null_end_frame },
|
||||
{ .name = NULL}},
|
||||
|
||||
.outputs = (AVFilterPad[]) {{ .name = "default",
|
||||
|
@ -27,6 +27,7 @@
|
||||
#include "libavutil/fifo.h"
|
||||
#include "libavutil/mathematics.h"
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
static const char *const var_names[] = {
|
||||
"E", ///< Euler number
|
||||
@ -339,7 +340,7 @@ AVFilter avfilter_vf_select = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.config_props = config_input,
|
||||
.start_frame = start_frame,
|
||||
.draw_slice = draw_slice,
|
||||
|
@ -29,6 +29,7 @@
|
||||
#include "libavutil/eval.h"
|
||||
#include "libavutil/mathematics.h"
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
static const char *const var_names[] = {
|
||||
"E", ///< Euler number
|
||||
@ -148,7 +149,7 @@ AVFilter avfilter_vf_setpts = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.config_props = config_input,
|
||||
.start_frame = start_frame, },
|
||||
{ .name = NULL }},
|
||||
|
@ -29,6 +29,7 @@
|
||||
#include "libavutil/rational.h"
|
||||
#include "avfilter.h"
|
||||
#include "internal.h"
|
||||
#include "video.h"
|
||||
|
||||
static const char *const var_names[] = {
|
||||
"E",
|
||||
@ -130,9 +131,9 @@ AVFilter avfilter_vf_settb = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = start_frame,
|
||||
.end_frame = avfilter_null_end_frame },
|
||||
.end_frame = ff_null_end_frame },
|
||||
{ .name = NULL }},
|
||||
|
||||
.outputs = (AVFilterPad[]) {{ .name = "default",
|
||||
|
@ -26,6 +26,7 @@
|
||||
#include "libavutil/imgutils.h"
|
||||
#include "libavutil/pixdesc.h"
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
|
||||
typedef struct {
|
||||
unsigned int frame;
|
||||
@ -86,8 +87,8 @@ AVFilter avfilter_vf_showinfo = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.start_frame = avfilter_null_start_frame,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = ff_null_start_frame,
|
||||
.end_frame = end_frame,
|
||||
.min_perms = AV_PERM_READ, },
|
||||
{ .name = NULL}},
|
||||
|
@ -24,6 +24,7 @@
|
||||
*/
|
||||
|
||||
#include "avfilter.h"
|
||||
#include "video.h"
|
||||
#include "libavutil/pixdesc.h"
|
||||
|
||||
typedef struct {
|
||||
@ -105,11 +106,11 @@ AVFilter avfilter_vf_slicify = {
|
||||
|
||||
.inputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO,
|
||||
.get_video_buffer = avfilter_null_get_video_buffer,
|
||||
.get_video_buffer = ff_null_get_video_buffer,
|
||||
.start_frame = start_frame,
|
||||
.draw_slice = draw_slice,
|
||||
.config_props = config_props,
|
||||
.end_frame = avfilter_null_end_frame, },
|
||||
.end_frame = ff_null_end_frame, },
|
||||
{ .name = NULL}},
|
||||
.outputs = (AVFilterPad[]) {{ .name = "default",
|
||||
.type = AVMEDIA_TYPE_VIDEO, },
|
||||
|
@ -65,7 +65,7 @@ static void ff_dlog_ref(void *ctx, AVFilterBufferRef *ref, int end)
|
||||
av_dlog(ctx, "]%s", end ? "\n" : "");
|
||||
}
|
||||
|
||||
AVFilterBufferRef *avfilter_null_get_video_buffer(AVFilterLink *link, int perms, int w, int h)
|
||||
AVFilterBufferRef *ff_null_get_video_buffer(AVFilterLink *link, int perms, int w, int h)
|
||||
{
|
||||
return avfilter_get_video_buffer(link->dst->outputs[0], perms, w, h);
|
||||
}
|
||||
@ -160,7 +160,7 @@ AVFilterBufferRef *avfilter_get_video_buffer(AVFilterLink *link, int perms, int
|
||||
return ret;
|
||||
}
|
||||
|
||||
void avfilter_null_start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
|
||||
void ff_null_start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
|
||||
{
|
||||
avfilter_start_frame(link->dst->outputs[0], picref);
|
||||
}
|
||||
@ -211,7 +211,7 @@ void avfilter_start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
|
||||
start_frame(link, link->cur_buf);
|
||||
}
|
||||
|
||||
void avfilter_null_end_frame(AVFilterLink *link)
|
||||
void ff_null_end_frame(AVFilterLink *link)
|
||||
{
|
||||
avfilter_end_frame(link->dst->outputs[0]);
|
||||
}
|
||||
@ -252,7 +252,7 @@ void avfilter_end_frame(AVFilterLink *link)
|
||||
}
|
||||
}
|
||||
|
||||
void avfilter_null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir)
|
||||
void ff_null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir)
|
||||
{
|
||||
avfilter_draw_slice(link->dst->outputs[0], y, h, slice_dir);
|
||||
}
|
||||
@ -326,4 +326,20 @@ void avfilter_default_draw_slice(AVFilterLink *inlink, int y, int h, int slice_d
|
||||
{
|
||||
default_draw_slice(inlink, y, h, slice_dir);
|
||||
}
|
||||
AVFilterBufferRef *avfilter_null_get_video_buffer(AVFilterLink *link, int perms, int w, int h)
|
||||
{
|
||||
return ff_null_get_video_buffer(link, perms, w, h);
|
||||
}
|
||||
void avfilter_null_start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
|
||||
{
|
||||
ff_null_start_frame(link, picref);
|
||||
}
|
||||
void avfilter_null_end_frame(AVFilterLink *link)
|
||||
{
|
||||
ff_null_end_frame(link);
|
||||
}
|
||||
void avfilter_null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir)
|
||||
{
|
||||
ff_null_draw_slice(link, y, h, slice_dir);
|
||||
}
|
||||
#endif
|
||||
|
@ -21,4 +21,10 @@
|
||||
|
||||
AVFilterBufferRef *ff_default_get_video_buffer(AVFilterLink *link,
|
||||
int perms, int w, int h);
|
||||
AVFilterBufferRef *ff_null_get_video_buffer(AVFilterLink *link, int perms, int w, int h);
|
||||
|
||||
void ff_null_start_frame(AVFilterLink *link, AVFilterBufferRef *picref);
|
||||
void ff_null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir);
|
||||
void ff_null_end_frame(AVFilterLink *link);
|
||||
|
||||
#endif /* AVFILTER_VIDEO_H */
|
||||
|
Loading…
x
Reference in New Issue
Block a user