From a5850215babe4359a032fcb7d2e614a6209fa1f6 Mon Sep 17 00:00:00 2001 From: Mathieu Duponchelle Date: Wed, 27 May 2020 16:30:41 +0200 Subject: avdemux: update the context we use to determine stream's caps The discovered frame rate is only available on the AVStream itself. Updating the temporary context framerate before building caps from it seems like a pretty non-intrusive approach. Fixes #75 Part-of: --- ext/libav/gstavdemux.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'ext') diff --git a/ext/libav/gstavdemux.c b/ext/libav/gstavdemux.c index 66f6bb1..21b46aa 100644 --- a/ext/libav/gstavdemux.c +++ b/ext/libav/gstavdemux.c @@ -951,6 +951,10 @@ gst_ffmpegdemux_get_stream (GstFFMpegDemux * demux, AVStream * avstream) case AVMEDIA_TYPE_VIDEO: templ = oclass->videosrctempl; num = demux->videopads++; + /* These are not part of the codec parameters we built the + * context from */ + ctx->framerate.num = avstream->r_frame_rate.num; + ctx->framerate.den = avstream->r_frame_rate.den; break; case AVMEDIA_TYPE_AUDIO: templ = oclass->audiosrctempl; -- cgit v1.2.1