}
}
-static void
-_gst_buffer_copy_into_mem (GstBuffer * dest, gsize offset, const guint8 * src,
- gsize size)
-{
- gsize bsize;
-
- g_return_if_fail (gst_buffer_is_writable (dest));
-
- bsize = gst_buffer_get_size (dest);
- g_return_if_fail (bsize >= offset + size);
-
- gst_buffer_fill (dest, offset, src, size);
-}
-
static GstBuffer *
_gst_buffer_new_wrapped (gpointer mem, gsize size, GFreeFunc free_func)
{
- GstBuffer *buf;
-
- buf = gst_buffer_new ();
- gst_buffer_append_memory (buf,
- gst_memory_new_wrapped (free_func ? 0 : GST_MEMORY_FLAG_READONLY,
- mem, size, 0, size, mem, free_func));
-
- return buf;
+ return gst_buffer_new_wrapped_full (free_func ? 0 : GST_MEMORY_FLAG_READONLY,
+ mem, size, 0, size, mem, free_func);
}
static GstFlowReturn
GST_DEBUG_OBJECT (qtdemux, "major brand: %" GST_FOURCC_FORMAT,
GST_FOURCC_ARGS (qtdemux->major_brand));
buf = qtdemux->comp_brands = gst_buffer_new_and_alloc (length - 16);
- _gst_buffer_copy_into_mem (buf, 0, buffer + 16, length - 16);
+ gst_buffer_fill (buf, 0, buffer + 16, length - 16);
}
}
switch (type) {
case FOURCC_tCtH:
buffer = gst_buffer_new_and_alloc (size);
- _gst_buffer_copy_into_mem (buffer, 0, buf, size);
+ gst_buffer_fill (buffer, 0, buf, size);
stream->buffers = g_slist_append (stream->buffers, buffer);
GST_LOG_OBJECT (qtdemux, "parsing theora header");
break;
case FOURCC_tCt_:
buffer = gst_buffer_new_and_alloc (size);
- _gst_buffer_copy_into_mem (buffer, 0, buf, size);
+ gst_buffer_fill (buffer, 0, buf, size);
stream->buffers = g_slist_append (stream->buffers, buffer);
GST_LOG_OBJECT (qtdemux, "parsing theora comment");
break;
case FOURCC_tCtC:
buffer = gst_buffer_new_and_alloc (size);
- _gst_buffer_copy_into_mem (buffer, 0, buf, size);
+ gst_buffer_fill (buffer, 0, buf, size);
stream->buffers = g_slist_append (stream->buffers, buffer);
GST_LOG_OBJECT (qtdemux, "parsing theora codebook");
break;
seqh_size = QT_UINT32 (data + 4);
if (seqh_size > 0) {
_seqh = gst_buffer_new_and_alloc (seqh_size);
- _gst_buffer_copy_into_mem (_seqh, 0, data + 8, seqh_size);
+ gst_buffer_fill (_seqh, 0, data + 8, seqh_size);
}
}
}
avc_data + 8 + 1, size - 1);
buf = gst_buffer_new_and_alloc (size);
- _gst_buffer_copy_into_mem (buf, 0, avc_data + 0x8, size);
+ gst_buffer_fill (buf, 0, avc_data + 0x8, size);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
if (len > 0x8) {
len -= 0x8;
buf = gst_buffer_new_and_alloc (len);
- _gst_buffer_copy_into_mem (buf, 0, data + 8, len);
+ gst_buffer_fill (buf, 0, data + 8, len);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
if (len > 0x8) {
len -= 0x8;
buf = gst_buffer_new_and_alloc (len);
- _gst_buffer_copy_into_mem (buf, 0, data + 8, len);
+ gst_buffer_fill (buf, 0, data + 8, len);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
GST_DEBUG_OBJECT (qtdemux, "found codec_data in stsd");
buf = gst_buffer_new_and_alloc (len);
- _gst_buffer_copy_into_mem (buf, 0, stsd_data, len);
+ gst_buffer_fill (buf, 0, stsd_data, len);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
break;
}
buf = gst_buffer_new_and_alloc (ovc1_len - 198);
- _gst_buffer_copy_into_mem (buf, 0, ovc1_data + 198, ovc1_len - 198);
+ gst_buffer_fill (buf, 0, ovc1_data + 198, ovc1_len - 198);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
}
wfex = (WAVEFORMATEX *) (owma_data + 36);
buf = gst_buffer_new_and_alloc (owma_len - 54);
- _gst_buffer_copy_into_mem (buf, 0, owma_data + 54, owma_len - 54);
+ gst_buffer_fill (buf, 0, owma_data + 54, owma_len - 54);
if (wfex->wFormatTag == 0x0161) {
codec_name = "Windows Media Audio";
version = 2;
headerlen -= 8;
headerbuf = gst_buffer_new_and_alloc (headerlen);
- _gst_buffer_copy_into_mem (headerbuf, 0, waveheader, headerlen);
+ gst_buffer_fill (headerbuf, 0, waveheader, headerlen);
if (gst_riff_parse_strf_auds (GST_ELEMENT_CAST (qtdemux),
headerbuf, &header, &extra)) {
if (len > 0x4C) {
GstBuffer *buf = gst_buffer_new_and_alloc (len - 0x4C);
- _gst_buffer_copy_into_mem (buf, 0, stsd_data + 0x4C, len - 0x4C);
+ gst_buffer_fill (buf, 0, stsd_data + 0x4C, len - 0x4C);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
/* codec-data contains alac atom size and prefix,
* ffmpeg likes it that way, not quite gst-ish though ...*/
buf = gst_buffer_new_and_alloc (len);
- _gst_buffer_copy_into_mem (buf, 0, alac->data, len);
+ gst_buffer_fill (buf, 0, alac->data, len);
gst_caps_set_simple (stream->caps,
"codec_data", GST_TYPE_BUFFER, buf, NULL);
gst_buffer_unref (buf);
GstBuffer *buf = gst_buffer_new_and_alloc (len - 0x34);
guint bitrate;
- _gst_buffer_copy_into_mem (buf, 0, stsd_data + 0x34, len - 0x34);
+ gst_buffer_fill (buf, 0, stsd_data + 0x34, len - 0x34);
/* If we have enough data, let's try to get the 'damr' atom. See
* the 3GPP container spec (26.244) for more details. */
data = node->data;
len = QT_UINT32 (data);
buf = gst_buffer_new_and_alloc (len);
- _gst_buffer_copy_into_mem (buf, 0, data, len);
+ gst_buffer_fill (buf, 0, data, len);
/* heuristic to determine style of tag */
if (QT_FOURCC (data + 4) == FOURCC_____ ||
GstBuffer *buffer;
buffer = gst_buffer_new_and_alloc (data_len);
- _gst_buffer_copy_into_mem (buffer, 0, data_ptr, data_len);
+ gst_buffer_fill (buffer, 0, data_ptr, data_len);
GST_DEBUG_OBJECT (qtdemux, "setting codec_data from esds");
GST_MEMDUMP_OBJECT (qtdemux, "codec_data from esds", data_ptr, data_len);