omxaudioenc: Drain encoder on NULL buffer and don't drain on flushing
authorSebastian Dröge <sebastian@centricular.com>
Sat, 10 May 2014 20:48:23 +0000 (22:48 +0200)
committerSebastian Dröge <sebastian@centricular.com>
Sat, 10 May 2014 20:48:23 +0000 (22:48 +0200)
omx/gstomxaudioenc.c

index 2c99664b5225056274d57d10a5505bfee68dd558..b27bd33fe702fb8f0525a08f6ed99ab3e8e133eb 100644 (file)
@@ -846,8 +846,6 @@ gst_omx_audio_enc_flush (GstAudioEncoder * encoder)
 
   GST_DEBUG_OBJECT (self, "Resetting encoder");
 
-  gst_omx_audio_enc_drain (self);
-
   gst_omx_port_set_flushing (self->enc_in_port, 5 * GST_SECOND, TRUE);
   gst_omx_port_set_flushing (self->enc_out_port, 5 * GST_SECOND, TRUE);
 
@@ -893,7 +891,7 @@ gst_omx_audio_enc_handle_frame (GstAudioEncoder * encoder, GstBuffer * inbuf)
   }
 
   if (inbuf == NULL)
-    return GST_FLOW_OK;
+    return gst_omx_audio_enc_drain (self);
 
   GST_DEBUG_OBJECT (self, "Handling frame");