mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-06-09 09:39:27 +00:00
add gst_buffer_stamp to copy timestamps and offsets from one buffer to another
Original commit message from CVS: add gst_buffer_stamp to copy timestamps and offsets from one buffer to another
This commit is contained in:
parent
1641eadfa4
commit
0d696073b8
|
@ -131,6 +131,25 @@ _gst_buffer_copy_from_pool (GstBuffer *buffer)
|
|||
return buffer->pool->buffer_copy (buffer->pool, buffer, buffer->pool->user_data);
|
||||
}
|
||||
|
||||
/**
|
||||
* gst_buffer_stamp:
|
||||
* @dest: buffer to stamp
|
||||
* @src: buffer to stamp from
|
||||
*
|
||||
* Copies additional information (timestamps and offsets) from one buffer to
|
||||
* the other.
|
||||
*/
|
||||
void
|
||||
gst_buffer_stamp (GstBuffer *dest, const GstBuffer *src)
|
||||
{
|
||||
g_return_if_fail (dest != NULL);
|
||||
g_return_if_fail (src != NULL);
|
||||
|
||||
GST_BUFFER_TIMESTAMP (dest) = GST_BUFFER_TIMESTAMP (src);
|
||||
GST_BUFFER_DURATION (dest) = GST_BUFFER_DURATION (src);
|
||||
GST_BUFFER_OFFSET (dest) = GST_BUFFER_OFFSET (src);
|
||||
GST_BUFFER_OFFSET_END (dest) = GST_BUFFER_OFFSET_END (src);
|
||||
}
|
||||
/**
|
||||
* gst_buffer_default_copy:
|
||||
* @buffer: a #GstBuffer to make a copy of.
|
||||
|
@ -164,10 +183,8 @@ gst_buffer_default_copy (GstBuffer *buffer)
|
|||
GST_BUFFER_SIZE (buffer));
|
||||
GST_BUFFER_SIZE (copy) = GST_BUFFER_SIZE (buffer);
|
||||
GST_BUFFER_MAXSIZE (copy) = GST_BUFFER_SIZE (buffer);
|
||||
GST_BUFFER_TIMESTAMP (copy) = GST_BUFFER_TIMESTAMP (buffer);
|
||||
GST_BUFFER_DURATION (copy) = GST_BUFFER_DURATION (buffer);
|
||||
GST_BUFFER_OFFSET (copy) = GST_BUFFER_OFFSET (buffer);
|
||||
GST_BUFFER_OFFSET_END (copy) = GST_BUFFER_OFFSET_END (buffer);
|
||||
|
||||
gst_buffer_stamp (copy, buffer);
|
||||
GST_BUFFER_BUFFERPOOL (copy) = NULL;
|
||||
GST_BUFFER_POOL_PRIVATE (copy) = NULL;
|
||||
|
||||
|
|
|
@ -162,6 +162,7 @@ G_STMT_START { \
|
|||
#define gst_buffer_ref_by_count(buf,c) GST_BUFFER (gst_data_ref_by_count (GST_DATA (buf), c))
|
||||
#define gst_buffer_unref(buf) gst_data_unref (GST_DATA (buf))
|
||||
/* copy buffer */
|
||||
void gst_buffer_stamp (GstBuffer *dest, const GstBuffer *src);
|
||||
#define gst_buffer_copy(buf) GST_BUFFER (gst_data_copy (GST_DATA (buf)))
|
||||
#define gst_buffer_is_writable(buf) gst_data_is_writable (GST_DATA (buf))
|
||||
#define gst_buffer_copy_on_write(buf) GST_BUFFER (gst_data_copy_on_write (GST_DATA (buf)))
|
||||
|
|
Loading…
Reference in a new issue