From 9c4b926c41544c3b72c3636f4d51cc280bec2029 Mon Sep 17 00:00:00 2001 From: Jonas Larsson Date: Tue, 29 Nov 2011 12:21:32 +0100 Subject: [PATCH] omxh264enc: Add support for resending headers after a forced-keyframe --- omx/gstomxh264enc.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/omx/gstomxh264enc.c b/omx/gstomxh264enc.c index af1ad6c218..95e8f2ee77 100644 --- a/omx/gstomxh264enc.c +++ b/omx/gstomxh264enc.c @@ -341,7 +341,17 @@ gst_omx_h264_enc_handle_output_frame (GstOMXVideoEnc * self, GstOMXPort * port, if (buf->omx_buf->nFilledLen >= 4 && GST_READ_UINT32_BE (buf->omx_buf->pBuffer + buf->omx_buf->nOffset) == 0x00000001) { + GstBuffer *hdrs; + + GST_DEBUG_OBJECT (self, "got codecconfig in byte-stream format"); buf->omx_buf->nFlags &= ~OMX_BUFFERFLAG_CODECCONFIG; + + hdrs = gst_buffer_new_and_alloc (buf->omx_buf->nFilledLen); + memcpy (GST_BUFFER_DATA (hdrs), + buf->omx_buf->pBuffer + buf->omx_buf->nOffset, + buf->omx_buf->nFilledLen); + gst_base_video_encoder_set_headers (GST_BASE_VIDEO_ENCODER (self), hdrs); + gst_buffer_unref (hdrs); } }