baseparse: put buffer in a correct state after gst_adapter_get_buffer call
We must make the buffer writable to write its PTS and DTS, and also reset its duration. The behaviour is now the same as before commit c3bcbadd, except metas might still be attached to the buffer extracted from the adapter. https://bugzilla.gnome.org/show_bug.cgi?id=752092
This commit is contained in:
parent
0728b219b9
commit
ea8cabe084
@ -3016,8 +3016,10 @@ gst_base_parse_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer)
|
||||
/* already inform subclass what timestamps we have planned,
|
||||
* at least if provided by time-based upstream */
|
||||
if (parse->priv->upstream_format == GST_FORMAT_TIME) {
|
||||
tmpbuf = gst_buffer_make_writable (tmpbuf);
|
||||
GST_BUFFER_PTS (tmpbuf) = parse->priv->next_pts;
|
||||
GST_BUFFER_DTS (tmpbuf) = parse->priv->next_dts;
|
||||
GST_BUFFER_DURATION (tmpbuf) = GST_CLOCK_TIME_NONE;
|
||||
}
|
||||
|
||||
/* keep the adapter mapped, so keep track of what has to be flushed */
|
||||
|
Loading…
x
Reference in New Issue
Block a user