{
GstY4mEncode *filter = GST_Y4M_ENCODE (GST_PAD_PARENT (pad));
GstBuffer *outbuf;
+ GstClockTime timestamp;
/* check we got some decent info from caps */
if (filter->width < 0) {
return GST_FLOW_NOT_NEGOTIATED;
}
+ timestamp = GST_BUFFER_TIMESTAMP (buf);
+
if (G_UNLIKELY (!filter->header)) {
outbuf = gst_y4m_encode_get_stream_header (filter);
filter->header = TRUE;
/* decorate */
gst_buffer_make_metadata_writable (outbuf);
gst_buffer_set_caps (outbuf, GST_PAD_CAPS (filter->srcpad));
- /* strip to avoid sink dropping on time-base, decorate and send */
- GST_BUFFER_TIMESTAMP (outbuf) = GST_CLOCK_TIME_NONE;
+
+ GST_BUFFER_TIMESTAMP (outbuf) = timestamp;
+
return gst_pad_push (filter->srcpad, outbuf);
}