summaryrefslogtreecommitdiffstats
path: root/gst/audioresample/buffer.c
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2005-12-02 11:34:50 +0000
committerWim Taymans <wim.taymans@gmail.com>2005-12-02 11:34:50 +0000
commitc962e657c3ce4ef1ba270b9c298d07eb9e3b1c09 (patch)
tree44e5b1068699db69a59d2772d4930723eca0acad /gst/audioresample/buffer.c
parent130b68aeff56298ade65ce96fb4966356afb5cd5 (diff)
downloadgst-plugins-bad-c962e657c3ce4ef1ba270b9c298d07eb9e3b1c09.tar.gz
gst-plugins-bad-c962e657c3ce4ef1ba270b9c298d07eb9e3b1c09.tar.bz2
gst-plugins-bad-c962e657c3ce4ef1ba270b9c298d07eb9e3b1c09.zip
gst/audioresample/: Fix audioresample, seek torture, new segments, reverse negotiation etc.. work fine.
Original commit message from CVS: * gst/audioresample/buffer.c: (audioresample_buffer_queue_flush): * gst/audioresample/buffer.h: * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audioresample/resample.c: (resample_input_flush), (resample_input_pushthrough), (resample_input_eos), (resample_get_output_size_for_input), (resample_get_input_size_for_output), (resample_get_output_size), (resample_get_output_data): * gst/audioresample/resample.h: * gst/audioresample/resample_ref.c: (resample_scale_ref): Fix audioresample, seek torture, new segments, reverse negotiation etc.. work fine.
Diffstat (limited to 'gst/audioresample/buffer.c')
-rw-r--r--gst/audioresample/buffer.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/gst/audioresample/buffer.c b/gst/audioresample/buffer.c
index 679fa020..442b4f8c 100644
--- a/gst/audioresample/buffer.c
+++ b/gst/audioresample/buffer.c
@@ -237,3 +237,17 @@ audioresample_buffer_queue_peek (AudioresampleBufferQueue * queue, int length)
return newbuffer;
}
+
+void
+audioresample_buffer_queue_flush (AudioresampleBufferQueue * queue)
+{
+ GList *g;
+
+ for (g = g_list_first (queue->buffers); g; g = g_list_next (g)) {
+ audioresample_buffer_unref ((AudioresampleBuffer *) g->data);
+ }
+ g_list_free (queue->buffers);
+ queue->buffers = NULL;
+ queue->depth = 0;
+ queue->offset = 0;
+}