2005-08-23 19:29:38 +00:00
|
|
|
|
|
|
|
#ifndef __AUDIORESAMPLE_BUFFER_H__
|
|
|
|
#define __AUDIORESAMPLE_BUFFER_H__
|
|
|
|
|
|
|
|
#include <glib.h>
|
|
|
|
|
|
|
|
typedef struct _AudioresampleBuffer AudioresampleBuffer;
|
|
|
|
typedef struct _AudioresampleBufferQueue AudioresampleBufferQueue;
|
|
|
|
|
|
|
|
struct _AudioresampleBuffer
|
|
|
|
{
|
|
|
|
unsigned char *data;
|
|
|
|
int length;
|
|
|
|
|
|
|
|
int ref_count;
|
|
|
|
|
|
|
|
AudioresampleBuffer *parent;
|
|
|
|
|
|
|
|
void (*free) (AudioresampleBuffer *, void *);
|
|
|
|
void *priv;
|
|
|
|
void *priv2;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct _AudioresampleBufferQueue
|
|
|
|
{
|
|
|
|
GList *buffers;
|
|
|
|
int depth;
|
|
|
|
int offset;
|
|
|
|
};
|
|
|
|
|
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.
2005-12-02 11:34:50 +00:00
|
|
|
AudioresampleBuffer * audioresample_buffer_new (void);
|
|
|
|
AudioresampleBuffer * audioresample_buffer_new_and_alloc (int size);
|
|
|
|
AudioresampleBuffer * audioresample_buffer_new_with_data (void *data, int size);
|
|
|
|
AudioresampleBuffer * audioresample_buffer_new_subbuffer (AudioresampleBuffer * buffer,
|
|
|
|
int offset,
|
|
|
|
int length);
|
|
|
|
void audioresample_buffer_ref (AudioresampleBuffer * buffer);
|
|
|
|
void audioresample_buffer_unref (AudioresampleBuffer * buffer);
|
|
|
|
|
|
|
|
AudioresampleBufferQueue *
|
|
|
|
audioresample_buffer_queue_new (void);
|
|
|
|
void audioresample_buffer_queue_free (AudioresampleBufferQueue * queue);
|
|
|
|
int audioresample_buffer_queue_get_depth (AudioresampleBufferQueue * queue);
|
|
|
|
int audioresample_buffer_queue_get_offset (AudioresampleBufferQueue * queue);
|
|
|
|
void audioresample_buffer_queue_push (AudioresampleBufferQueue * queue,
|
|
|
|
AudioresampleBuffer * buffer);
|
|
|
|
AudioresampleBuffer * audioresample_buffer_queue_pull (AudioresampleBufferQueue * queue, int len);
|
|
|
|
AudioresampleBuffer * audioresample_buffer_queue_peek (AudioresampleBufferQueue * queue, int len);
|
|
|
|
void audioresample_buffer_queue_flush (AudioresampleBufferQueue * queue);
|
2005-08-23 19:29:38 +00:00
|
|
|
|
|
|
|
#endif
|