GstBuffer *out_buf;
out_buf = gst_adapter_take_buffer (parse->adapter, parse->offset);
- out_buf = gst_buffer_make_metadata_writable (out_buf);
- GST_BUFFER_TIMESTAMP (out_buf) = parse->timestamp;
if (G_LIKELY (out_buf)) {
+ out_buf = gst_buffer_make_metadata_writable (out_buf);
+ GST_BUFFER_TIMESTAMP (out_buf) = parse->timestamp;
+
/* Set GST_BUFFER_FLAG_DELTA_UNIT if it's not an intra frame */
if (!parse->intra_frame) {
GST_BUFFER_FLAG_SET (out_buf, GST_BUFFER_FLAG_DELTA_UNIT);
/* insert header */
superbuf = gst_buffer_merge (parse->config, out_buf);
-
- GST_BUFFER_TIMESTAMP (superbuf) = timestamp;
gst_buffer_unref (out_buf);
- out_buf = superbuf;
+
+ out_buf = gst_buffer_make_metadata_writable (superbuf);
+ GST_BUFFER_TIMESTAMP (out_buf) = timestamp;
if (G_UNLIKELY (timestamp != -1)) {
parse->last_report = timestamp;