diff --git a/libs/gst/base/gstadapter.c b/libs/gst/base/gstadapter.c
index 3357498..3a6fc95 100644
--- a/libs/gst/base/gstadapter.c
+++ b/libs/gst/base/gstadapter.c
@@ -302,6 +302,9 @@ gst_adapter_push (GstAdapter * adapter, GstBuffer * buf)
     /* we can't have empty buffers, several parts in this file rely on it, this
      * has some problems for the timestamp tracking. */
     GST_LOG_OBJECT (adapter, "discarding empty buffer");
+    if (G_UNLIKELY (adapter->buflist == NULL)) {
+      update_timestamp (adapter, buf);
+    }
     gst_buffer_unref (buf);
   } else {
     adapter->size += size;
