summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSiva Chandran P <siva.chandran.p@gmail.com>2013-04-09 20:40:06 +0200
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2013-04-09 20:44:23 +0200
commit758d7bf7ea516e824a536cd6a12d45aa07e483fa (patch)
treedaf556a893033afb07c2e1d10049bf9b59598148
parentf656d9eaf764b69145a0b0cf834f7b098231f80e (diff)
avvidec: Make sure to store newly set caps after resetting the decoder
Otherwise we'll just set the to NULL while resetting the decoder and don't have them available anymore later. https://bugzilla.gnome.org/show_bug.cgi?id=697548
-rw-r--r--ext/libav/gstavviddec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/libav/gstavviddec.c b/ext/libav/gstavviddec.c
index ce8d63e..0e909a4 100644
--- a/ext/libav/gstavviddec.c
+++ b/ext/libav/gstavviddec.c
@@ -371,8 +371,6 @@ gst_ffmpegviddec_set_format (GstVideoDecoder * decoder,
return TRUE;
}
- gst_caps_replace (&ffmpegdec->last_caps, state->caps);
-
GST_DEBUG_OBJECT (ffmpegdec, "setcaps called");
GST_OBJECT_LOCK (ffmpegdec);
@@ -389,6 +387,8 @@ gst_ffmpegviddec_set_format (GstVideoDecoder * decoder,
gst_ffmpegviddec_close (ffmpegdec);
}
+ gst_caps_replace (&ffmpegdec->last_caps, state->caps);
+
/* set buffer functions */
ffmpegdec->context->get_buffer = gst_ffmpegviddec_get_buffer;
ffmpegdec->context->reget_buffer = gst_ffmpegviddec_reget_buffer;