omxh264enc: Don't let baseclass finish frames for SPS/PPS buffers
authorSebastian Dröge <sebastian@centricular.com>
Tue, 24 Jun 2014 09:11:28 +0000 (11:11 +0200)
committerSebastian Dröge <sebastian@centricular.com>
Tue, 24 Jun 2014 09:11:28 +0000 (11:11 +0200)
Otherwise we a) send them twice, and b) finish a frame for something
that does not even include a frame.

https://bugzilla.gnome.org/show_bug.cgi?id=726669

omx/gstomxh264enc.c

index 3c49cd9..94ba2dd 100644 (file)
@@ -538,6 +538,11 @@ gst_omx_h264_enc_handle_output_frame (GstOMXVideoEnc * self, GstOMXPort * port,
       gst_buffer_unmap (hdrs, &map);
       l = g_list_append (l, hdrs);
       gst_video_encoder_set_headers (GST_VIDEO_ENCODER (self), l);
+
+      if (frame)
+        gst_video_codec_frame_unref (frame);
+
+      return GST_FLOW_OK;
     }
   }