summaryrefslogtreecommitdiff
path: root/libavfilter/vf_scale.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-08-18 15:10:30 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2015-08-18 15:59:23 +0200
commit22f85543ed92f4c6453b110137834151dee0d7eb (patch)
tree14b0bc6195973a6d4239c6a4bcc3ea370a98c546 /libavfilter/vf_scale.c
parentdb0f8f3f9d9f7d440b1e4a0b416bf6c7b6390bd0 (diff)
scale2ref: override request_frame() and correctly connect them to the corresponding inputs
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavfilter/vf_scale.c')
-rw-r--r--libavfilter/vf_scale.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/libavfilter/vf_scale.c b/libavfilter/vf_scale.c
index 07d52179e3..9698bfbf7c 100644
--- a/libavfilter/vf_scale.c
+++ b/libavfilter/vf_scale.c
@@ -433,6 +433,16 @@ static int config_props_ref(AVFilterLink *outlink)
return 0;
}
+static int request_frame(AVFilterLink *outlink)
+{
+ return ff_request_frame(outlink->src->inputs[0]);
+}
+
+static int request_frame_ref(AVFilterLink *outlink)
+{
+ return ff_request_frame(outlink->src->inputs[1]);
+}
+
static int scale_slice(AVFilterLink *link, AVFrame *out_buf, AVFrame *cur_pic, struct SwsContext *sws, int y, int h, int mul, int field)
{
ScaleContext *scale = link->dst->priv;
@@ -697,11 +707,13 @@ static const AVFilterPad avfilter_vf_scale2ref_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_VIDEO,
.config_props = config_props,
+ .request_frame= request_frame,
},
{
.name = "ref",
.type = AVMEDIA_TYPE_VIDEO,
.config_props = config_props_ref,
+ .request_frame= request_frame_ref,
},
{ NULL }
};