summaryrefslogtreecommitdiff
path: root/src/xine-engine/buffer.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/xine-engine/buffer.c')
-rw-r--r--src/xine-engine/buffer.c25
1 files changed, 13 insertions, 12 deletions
diff --git a/src/xine-engine/buffer.c b/src/xine-engine/buffer.c
index 77c0abc9d..50ffb57cd 100644
--- a/src/xine-engine/buffer.c
+++ b/src/xine-engine/buffer.c
@@ -36,6 +36,12 @@
#include <stdlib.h>
#include <assert.h>
+#ifdef HAVE_FFMPEG_AVUTIL_H
+# include <mem.h>
+#else
+# include <libavutil/mem.h>
+#endif
+
/********** logging **********/
#define LOG_MODULE "buffer"
#define LOG_VERBOSE
@@ -43,9 +49,9 @@
#define LOG
*/
-#include "buffer.h"
-#include "xineutils.h"
-#include "xine_internal.h"
+#include <xine/buffer.h>
+#include <xine/xineutils.h>
+#include <xine/xine_internal.h>
/*
* put a previously allocated buffer element back into the buffer pool
@@ -358,7 +364,7 @@ static void fifo_buffer_dispose (fifo_buffer_t *this) {
received++;
}
- free (this->buffer_pool_base);
+ av_free (this->buffer_pool_base);
pthread_mutex_destroy(&this->mutex);
pthread_cond_destroy(&this->not_empty);
pthread_mutex_destroy(&this->buffer_pool_mutex);
@@ -497,7 +503,6 @@ fifo_buffer_t *_x_fifo_buffer_new (int num_buffers, uint32_t buf_size) {
fifo_buffer_t *this;
int i;
- int alignment = 2048;
unsigned char *multi_buffer = NULL;
this = calloc(1, sizeof(fifo_buffer_t));
@@ -527,15 +532,11 @@ fifo_buffer_t *_x_fifo_buffer_new (int num_buffers, uint32_t buf_size) {
*/
- if (buf_size % alignment != 0)
- buf_size += alignment - (buf_size % alignment);
-
/*
- printf ("Allocating %d buffers of %ld bytes in one chunk (alignment = %d)\n",
- num_buffers, (long int) buf_size, alignment);
+ printf ("Allocating %d buffers of %ld bytes in one chunk\n",
+ num_buffers, (long int) buf_size);
*/
- multi_buffer = xine_xmalloc_aligned (alignment, num_buffers * buf_size,
- &this->buffer_pool_base);
+ multi_buffer = this->buffer_pool_base = av_mallocz (num_buffers * buf_size);
this->buffer_pool_top = NULL;