diff --git a/gst/mpegaudioparse/gstmpegaudioparse.c b/gst/mpegaudioparse/gstmpegaudioparse.c index 177a5d3d94..c6c79655f6 100644 --- a/gst/mpegaudioparse/gstmpegaudioparse.c +++ b/gst/mpegaudioparse/gstmpegaudioparse.c @@ -258,7 +258,7 @@ gst_mp3parse_chain (GstPad *pad, GstBuffer *buf) /* if we have something left from the previous frame */ if (mp3parse->partialbuf) { - mp3parse->partialbuf = gst_buffer_append(mp3parse->partialbuf, buf); + mp3parse->partialbuf = gst_buffer_merge(mp3parse->partialbuf, buf); /* and the one we received.. */ gst_buffer_unref(buf); } diff --git a/gst/mpegstream/gstmpegparse.c b/gst/mpegstream/gstmpegparse.c index 8d2d61dd5c..7938c0bb74 100644 --- a/gst/mpegstream/gstmpegparse.c +++ b/gst/mpegstream/gstmpegparse.c @@ -380,13 +380,15 @@ gst_mpeg_parse_loop (GstElement *element) mpeg_parse->discont_pending = TRUE; mpeg_parse->scr_pending = TRUE; mpeg_parse->packetize->resync = TRUE; - gst_event_free (event); + gst_event_unref (event); return; default: break; } if (CLASS (mpeg_parse)->send_data) CLASS (mpeg_parse)->send_data (mpeg_parse, data, time); + else + gst_event_unref (event); } else { guint64 size; @@ -498,6 +500,7 @@ gst_mpeg_parse_handle_src_event (GstPad *pad, GstEvent *event) guint64 desired_offset; if (GST_EVENT_SEEK_FORMAT (event) != GST_FORMAT_TIME) { + gst_event_unref (event); return FALSE; } @@ -506,6 +509,7 @@ gst_mpeg_parse_handle_src_event (GstPad *pad, GstEvent *event) desired_offset = mpeg_parse->bit_rate * GST_EVENT_SEEK_OFFSET (event) / (8 * GST_SECOND); if (!gst_bytestream_seek (mpeg_parse->packetize->bs, desired_offset, GST_SEEK_METHOD_SET)) { + gst_event_unref (event); return FALSE; } mpeg_parse->discont_pending = TRUE; @@ -517,6 +521,7 @@ gst_mpeg_parse_handle_src_event (GstPad *pad, GstEvent *event) break; } + gst_event_unref (event); return res; } diff --git a/gst/mpegstream/gstrfc2250enc.c b/gst/mpegstream/gstrfc2250enc.c index 843891b0ab..c9b83e87a0 100644 --- a/gst/mpegstream/gstrfc2250enc.c +++ b/gst/mpegstream/gstrfc2250enc.c @@ -168,7 +168,7 @@ gst_rfc2250_enc_add_slice (GstRFC2250Enc *enc, GstBuffer *buffer) /* see if the slice fits in the current buffer */ if (slice_length <= enc->remaining) { - gst_buffer_append (enc->packet, buffer); + gst_buffer_merge (enc->packet, buffer); gst_buffer_unref (buffer); enc->remaining -= slice_length; } @@ -177,7 +177,7 @@ gst_rfc2250_enc_add_slice (GstRFC2250Enc *enc, GstBuffer *buffer) /* do we need to start a new packet? */ if (slice_length <= enc->MTU) { gst_rfc2250_enc_new_buffer (enc); - gst_buffer_append (enc->packet, buffer); + gst_buffer_merge (enc->packet, buffer); gst_buffer_unref (buffer); enc->remaining -= slice_length; } @@ -189,7 +189,7 @@ gst_rfc2250_enc_add_slice (GstRFC2250Enc *enc, GstBuffer *buffer) GstBuffer *outbuf; outbuf = gst_buffer_create_sub (buffer, offset, MIN (enc->remaining, slice_length)); - gst_buffer_append (enc->packet, outbuf); + gst_buffer_merge (enc->packet, outbuf); slice_length -= GST_BUFFER_SIZE (outbuf); offset += GST_BUFFER_SIZE (outbuf); gst_buffer_unref (outbuf); @@ -251,7 +251,7 @@ gst_rfc2250_enc_loop (GstElement *element) } if (buffer) { - gst_buffer_append (enc->packet, buffer); + gst_buffer_merge (enc->packet, buffer); enc->remaining -= GST_BUFFER_SIZE (buffer); gst_buffer_unref (buffer); }