aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2022-10-04 12:51:41 +0200
committerAnton Khirnov <anton@khirnov.net>2022-10-13 10:19:13 +0200
commit476c90c2072f406fb3306f27030dd9c8c69b5441 (patch)
tree223dd69a6ec7ca696a3754d9ffe117e5bf1cc64e
parent3ce161610647e034e7d42caeb192ae0653bdffe6 (diff)
downloadffmpeg-476c90c2072f406fb3306f27030dd9c8c69b5441.tar.gz
lavfi/f_drawgraph: forward input frame durations
-rw-r--r--libavfilter/f_drawgraph.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavfilter/f_drawgraph.c b/libavfilter/f_drawgraph.c
index 000255fc52..d29a7fb60a 100644
--- a/libavfilter/f_drawgraph.c
+++ b/libavfilter/f_drawgraph.c
@@ -168,7 +168,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in)
AVDictionaryEntry *e;
AVFrame *out = s->out;
AVFrame *clone = NULL;
- int64_t in_pts, out_pts;
+ int64_t in_pts, out_pts, in_duration;
int i;
if (s->slide == 4 && s->nb_values >= s->values_size[0] / sizeof(float)) {
@@ -320,6 +320,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in)
s->x++;
in_pts = in->pts;
+ in_duration = in->duration;
av_frame_free(&in);
@@ -336,6 +337,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in)
return AVERROR(ENOMEM);
clone->pts = s->prev_pts = out_pts;
+ clone->duration = av_rescale_q(in_duration, inlink->time_base, outlink->time_base);
return ff_filter_frame(outlink, clone);
}