summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2013-03-19 12:55:09 +0100
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2013-03-19 12:55:09 +0100
commite533da2b224548cd4638827560b2e753fa34e662 (patch)
tree1363652fff655638f61200bc555adc10c581567b
parentff5390d7c31ca0c4b21cbe9d4ac51d318b08acd6 (diff)
downloadgst-omx-e533da2b224548cd4638827560b2e753fa34e662.tar.gz
omxvideodec: Set ENDOFFRAME flag for the end of frames
-rw-r--r--omx/gstomxvideodec.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/omx/gstomxvideodec.c b/omx/gstomxvideodec.c
index 12f7634..b4ebab7 100644
--- a/omx/gstomxvideodec.c
+++ b/omx/gstomxvideodec.c
@@ -2322,6 +2322,7 @@ gst_omx_video_dec_handle_frame (GstVideoDecoder * decoder,
}
buf->omx_buf->nFlags |= OMX_BUFFERFLAG_CODECCONFIG;
+ buf->omx_buf->nFlags |= OMX_BUFFERFLAG_ENDOFFRAME;
buf->omx_buf->nFilledLen = gst_buffer_get_size (codec_data);;
gst_buffer_extract (codec_data, 0,
buf->omx_buf->pBuffer + buf->omx_buf->nOffset,
@@ -2384,10 +2385,13 @@ gst_omx_video_dec_handle_frame (GstVideoDecoder * decoder,
/* TODO: Set flags
* - OMX_BUFFERFLAG_DECODEONLY for buffers that are outside
* the segment
- * - OMX_BUFFERFLAG_ENDOFFRAME for parsed input
*/
offset += buf->omx_buf->nFilledLen;
+
+ if (offset == size)
+ buf->omx_buf->nFlags |= OMX_BUFFERFLAG_ENDOFFRAME;
+
self->started = TRUE;
err = gst_omx_port_release_buffer (port, buf);
if (err != OMX_ErrorNone)