diff --git a/ext/ffmpeg/gstffmpegenc.c b/ext/ffmpeg/gstffmpegenc.c index 3a36019c2d..3e3b617a2c 100644 --- a/ext/ffmpeg/gstffmpegenc.c +++ b/ext/ffmpeg/gstffmpegenc.c @@ -526,6 +526,9 @@ gst_ffmpegenc_setcaps (GstPad * pad, GstCaps * caps) if (ffmpegenc->opened) { gst_ffmpeg_avcodec_close (ffmpegenc->context); ffmpegenc->opened = FALSE; + /* fixed src caps; + * so clear src caps for proper (re-)negotiation */ + gst_pad_set_caps (ffmpegenc->srcpad, NULL); } /* set defaults */