From: Wim Taymans Date: Sun, 1 Apr 2012 16:11:23 +0000 (+0200) Subject: Improve buffer allocation of wrapped memory X-Git-Tag: 1.19.3~511^2~6627 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9ef519d99ad7f73055484603aeaa8eecf0c4f5cf;p=platform%2Fupstream%2Fgstreamer.git Improve buffer allocation of wrapped memory --- diff --git a/gst-libs/gst/rtp/gstrtcpbuffer.c b/gst-libs/gst/rtp/gstrtcpbuffer.c index 7b83b28..cbe370a 100644 --- a/gst-libs/gst/rtp/gstrtcpbuffer.c +++ b/gst-libs/gst/rtp/gstrtcpbuffer.c @@ -69,9 +69,7 @@ gst_rtcp_buffer_new_take_data (gpointer data, guint len) g_return_val_if_fail (data != NULL, NULL); g_return_val_if_fail (len > 0, NULL); - result = gst_buffer_new (); - gst_buffer_append_memory (result, - gst_memory_new_wrapped (0, data, len, 0, len, data, g_free)); + result = gst_buffer_new_wrapped (data, len); return result; } @@ -234,9 +232,7 @@ gst_rtcp_buffer_new (guint mtu) data = g_malloc0 (mtu); - result = gst_buffer_new (); - gst_buffer_append_memory (result, - gst_memory_new_wrapped (0, data, mtu, 0, 0, data, g_free)); + result = gst_buffer_new_wrapped_full (0, data, mtu, 0, 0, data, g_free); return result; } diff --git a/gst-libs/gst/rtp/gstrtpbuffer.c b/gst-libs/gst/rtp/gstrtpbuffer.c index 53b5eb6..a3fbc45 100644 --- a/gst-libs/gst/rtp/gstrtpbuffer.c +++ b/gst-libs/gst/rtp/gstrtpbuffer.c @@ -143,16 +143,10 @@ gst_rtp_buffer_allocate_data (GstBuffer * buffer, guint payload_len, GstBuffer * gst_rtp_buffer_new_take_data (gpointer data, gsize len) { - GstBuffer *result; - g_return_val_if_fail (data != NULL, NULL); g_return_val_if_fail (len > 0, NULL); - result = gst_buffer_new (); - gst_buffer_append_memory (result, - gst_memory_new_wrapped (0, data, len, 0, len, data, g_free)); - - return result; + return gst_buffer_new_wrapped (data, len); } /** diff --git a/gst-libs/gst/tag/gstexiftag.c b/gst-libs/gst/tag/gstexiftag.c index e015285..4835560 100644 --- a/gst-libs/gst/tag/gstexiftag.c +++ b/gst-libs/gst/tag/gstexiftag.c @@ -1352,9 +1352,7 @@ parse_exif_undefined_tag (GstExifReader * reader, const GstExifTagMatch * tag, if (tagtype == GST_TYPE_BUFFER) { GstBuffer *buf; - buf = gst_buffer_new (); - gst_buffer_append_memory (buf, - gst_memory_new_wrapped (0, data, count, 0, count, data, g_free)); + buf = gst_buffer_new_wrapped (data, count); data = NULL; gst_tag_list_add (reader->taglist, GST_TAG_MERGE_APPEND, tag->gst_tag, diff --git a/gst-libs/gst/tag/gstxmptag.c b/gst-libs/gst/tag/gstxmptag.c index 0f57168..3d257aa 100644 --- a/gst-libs/gst/tag/gstxmptag.c +++ b/gst-libs/gst/tag/gstxmptag.c @@ -1874,9 +1874,7 @@ gst_tag_list_to_xmp_buffer_full (const GstTagList * list, gboolean read_only, bsize = data->len; bdata = g_string_free (data, FALSE); - buffer = gst_buffer_new (); - gst_buffer_append_memory (buffer, - gst_memory_new_wrapped (0, bdata, bsize, 0, bsize, bdata, g_free)); + buffer = gst_buffer_new_wrapped (bdata, bsize); return buffer; } diff --git a/gst/gdp/gstgdppay.c b/gst/gdp/gstgdppay.c index aab3f85..335c984 100644 --- a/gst/gdp/gstgdppay.c +++ b/gst/gdp/gstgdppay.c @@ -226,14 +226,10 @@ gst_gdp_buffer_from_caps (GstGDPPay * this, GstCaps * caps) goto packet_failed; GST_LOG_OBJECT (this, "creating GDP header and payload buffer from caps"); - headerbuf = gst_buffer_new (); - gst_buffer_append_memory (headerbuf, - gst_memory_new_wrapped (0, header, len, 0, len, header, g_free)); + headerbuf = gst_buffer_new_wrapped (header, len); - payloadbuf = gst_buffer_new (); plen = gst_dp_header_payload_length (header); - gst_buffer_append_memory (payloadbuf, - gst_memory_new_wrapped (0, payload, plen, 0, plen, payload, g_free)); + payloadbuf = gst_buffer_new_wrapped (payload, plen); return gst_buffer_append (headerbuf, payloadbuf); @@ -257,9 +253,7 @@ gst_gdp_pay_buffer_from_buffer (GstGDPPay * this, GstBuffer * buffer) goto no_buffer; GST_LOG_OBJECT (this, "creating GDP header and payload buffer from buffer"); - headerbuf = gst_buffer_new (); - gst_buffer_append_memory (headerbuf, - gst_memory_new_wrapped (0, header, len, 0, len, header, g_free)); + headerbuf = gst_buffer_new_wrapped (header, len); /* we do not want to lose the ref on the incoming buffer */ gst_buffer_ref (buffer); @@ -290,9 +284,7 @@ gst_gdp_buffer_from_event (GstGDPPay * this, GstEvent * event) goto no_event; GST_LOG_OBJECT (this, "creating GDP header and payload buffer from event"); - headerbuf = gst_buffer_new (); - gst_buffer_append_memory (headerbuf, - gst_memory_new_wrapped (0, header, len, 0, len, header, g_free)); + headerbuf = gst_buffer_new_wrapped (header, len); payloadbuf = gst_buffer_new (); plen = gst_dp_header_payload_length (header);