summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2013-03-15 14:09:45 +0100
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2013-03-15 14:09:45 +0100
commit2b580837f580b68f08de8cb554d232d71e008b00 (patch)
treef0b3e0ba220f7ce171c769a2d7e360b74158e5a8
parente1f94660f73bdb20fa601b3619cc7f7ac8e90fb0 (diff)
downloadgst-omx-2b580837f580b68f08de8cb554d232d71e008b00.tar.gz
omxvideodec: Make sure that the first frame we pass to OpenMAX is a sync frame
-rw-r--r--omx/gstomxvideodec.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/omx/gstomxvideodec.c b/omx/gstomxvideodec.c
index 6e8d139..be7e1f8 100644
--- a/omx/gstomxvideodec.c
+++ b/omx/gstomxvideodec.c
@@ -2200,6 +2200,11 @@ gst_omx_video_dec_handle_frame (GstVideoDecoder * decoder,
return GST_FLOW_EOS;
}
+ if (!self->started && !GST_VIDEO_CODEC_FRAME_IS_SYNC_POINT (frame)) {
+ gst_video_decoder_drop_frame (GST_VIDEO_DECODER (self), frame);
+ return GST_FLOW_OK;
+ }
+
timestamp = frame->pts;
duration = frame->duration;