28 #include "libavutil/attributes.h"
30 #include "libavutil/mem.h"
31 #include "libavutil/opt.h"
52 snprintf(name,
sizeof(name),
"output%d", i);
90 #define OFFSET(x) offsetof(SplitContext, x)
91 #define FLAGS AV_OPT_FLAG_AUDIO_PARAM | AV_OPT_FLAG_VIDEO_PARAM
126 .priv_class = &split_class,
152 .priv_class = &asplit_class,
157 .
inputs = avfilter_af_asplit_inputs,
This structure describes decoded (raw) audio or video data.
static const AVClass asplit_class
const char * name
Filter name.
void * priv
private data for use by the filter
static const AVFilterPad outputs[]
char * av_strdup(const char *s) av_malloc_attrib
Duplicate the string s.
static av_cold void uninit(AVFilterContext *ctx)
static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
AVFrame * ff_null_get_video_buffer(AVFilterLink *link, int w, int h)
AVFrame * av_frame_clone(const AVFrame *src)
Create a new frame that references the same data as src.
static av_cold void split_uninit(AVFilterContext *ctx)
static av_cold int split_init(AVFilterContext *ctx)
void av_freep(void *ptr)
Free a memory block which has been allocated with av_malloc(z)() or av_realloc() and set the pointer ...
int ff_filter_frame(AVFilterLink *link, AVFrame *frame)
Send a frame of data to the next filter.
const AVFilterPad * inputs
List of inputs, terminated by a zeroed element.
const char * class_name
The name of the class; usually it is the same name as the context structure type to which the AVClass...
static const AVClass split_class
#define AVFILTER_FLAG_DYNAMIC_OUTPUTS
The number of the filter outputs is not determined just by AVFilter.outputs.
A link between two filters.
void av_frame_free(AVFrame **frame)
Free the frame and any dynamically allocated objects in it, e.g.
unsigned nb_outputs
number of output pads
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
static const AVFilterPad avfilter_af_asplit_inputs[]
common internal API header
static void ff_insert_outpad(AVFilterContext *f, unsigned index, AVFilterPad *p)
Insert a new output pad for the filter.
const AVFilter * filter
the AVFilter of which this is an instance
AVFrame * ff_null_get_audio_buffer(AVFilterLink *link, int nb_samples)
get_audio_buffer() handler for filters which simply pass audio along
Main libavfilter public API header.
AVFilterLink ** outputs
array of pointers to output links
static const AVFilterPad avfilter_vf_split_inputs[]
Describe the class of an AVClass context structure.
static const AVFilterPad inputs[]
AVFilterContext * dst
dest filter
static const AVOption options[]
struct AVFilterPad AVFilterPad
static av_cold int init(AVCodecParserContext *s)
AVFilterPad * output_pads
array of output pads
av_default_item_name
Return the context name.