diff --git a/gst-libs/gst/audio/gstbaseaudiosink.c b/gst-libs/gst/audio/gstbaseaudiosink.c
index 7007e4e..a9fcebe 100644
--- a/gst-libs/gst/audio/gstbaseaudiosink.c
+++ b/gst-libs/gst/audio/gstbaseaudiosink.c
@@ -1263,6 +1263,10 @@ gst_base_audio_sink_render (GstBaseSink * bsink, GstBuffer * buf)
       GST_TIME_ARGS (bsink->segment.start), samples);
 
   data = GST_BUFFER_DATA (buf);
+  if (G_UNLIKELY (!data)) {
+    GST_DEBUG_OBJECT (sink, "Empty buffer, nothing to commit");
+    return GST_FLOW_OK;
+  }
 
   /* if not valid timestamp or we can't clip or sync, try to play
    * sample ASAP */
