summaryrefslogtreecommitdiffstats
path: root/demux/demux.c
diff options
context:
space:
mode:
Diffstat (limited to 'demux/demux.c')
-rw-r--r--demux/demux.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/demux/demux.c b/demux/demux.c
index c62c0754b8..94b230a6dc 100644
--- a/demux/demux.c
+++ b/demux/demux.c
@@ -1176,6 +1176,7 @@ static int cached_demux_control(struct demux_internal *in, int cmd, void *arg)
.eof = in->last_eof,
.idle = in->idle,
.ts_range = {MP_NOPTS_VALUE, MP_NOPTS_VALUE},
+ .ts_duration = -1,
};
for (int n = 0; n < in->d_user->num_streams; n++) {
struct demux_stream *ds = in->d_user->streams[n]->ds;
@@ -1186,6 +1187,8 @@ static int cached_demux_control(struct demux_internal *in, int cmd, void *arg)
}
}
r->idle = (r->idle && !r->underrun) || r->eof;
+ if (r->ts_range[0] != MP_NOPTS_VALUE && r->ts_range[1] != MP_NOPTS_VALUE)
+ r->ts_duration = r->ts_range[1] - r->ts_range[0];
return DEMUXER_CTRL_OK;
}
}