42 #define OFFSET(x) offsetof(InterleaveContext, x)
44 #define DEFINE_OPTIONS(filt_name, flags_) \
45 static const AVOption filt_name##_options[] = { \
46 { "nb_inputs", "set number of inputs", OFFSET(nb_inputs), AV_OPT_TYPE_INT, {.i64 = 2}, 1, INT_MAX, .flags = flags_ }, \
47 { "n", "set number of inputs", OFFSET(nb_inputs), AV_OPT_TYPE_INT, {.i64 = 2}, 1, INT_MAX, .flags = flags_ }, \
55 int i, queue_idx = -1;
56 int64_t pts_min = INT64_MAX;
66 if (frame->
pts < pts_min) {
91 "NOPTS value for input frame cannot be accepted, frame discarded\n");
115 for (i = 0; i < interleave->
nb_inputs; i++) {
124 switch (outpad->
type) {
158 outlink->
w = inlink0->
w;
159 outlink->
h = inlink0->
h;
166 if (outlink->
w != inlink->
w ||
167 outlink->
h != inlink->
h ||
171 "(size %dx%d, SAR %d:%d) do not match the corresponding "
172 "output link parameters (%dx%d, SAR %d:%d)\n",
176 outlink->
w, outlink->
h,
205 #if CONFIG_INTERLEAVE_FILTER
221 .
name =
"interleave",
227 .priv_class = &interleave_class,
233 #if CONFIG_AINTERLEAVE_FILTER
248 AVFilter avfilter_af_ainterleave = {
249 .
name =
"ainterleave",
254 .
outputs = ainterleave_outputs,
255 .priv_class = &ainterleave_class,