--- src/liba52/a52_internal.h Sun Jul 28 03:52:06 2002 +++ src/liba52/a52_internal.h Wed Aug 28 19:01:05 2002 @@ -84,6 +84,7 @@ expbap_t lfe_expbap; sample_t * samples; + void * samples_base; int downmixed; }; --- src/liba52/imdct.c Sun Jul 28 03:52:07 2002 +++ src/liba52/imdct.c Wed Aug 28 18:55:38 2002 @@ -38,7 +38,7 @@ #include "a52.h" #include "a52_internal.h" -#include "mm_accel.h" +#include "xineutils.h" typedef struct complex_s { sample_t real; --- src/liba52/parse.c Sun Jul 28 03:52:07 2002 +++ src/liba52/parse.c Wed Aug 28 19:02:21 2002 @@ -31,14 +31,7 @@ #include "a52_internal.h" #include "bitstream.h" #include "tables.h" - -#ifdef HAVE_MEMALIGN -/* some systems have memalign() but no declaration for it */ -void * memalign (size_t align, size_t size); -#else -/* assume malloc alignment is sufficient */ -#define memalign(align,size) malloc (size) -#endif +#include "xineutils.h" typedef struct { sample_t q1[2]; @@ -60,7 +53,7 @@ if (state == NULL) return NULL; - state->samples = memalign (16, 256 * 12 * sizeof (sample_t)); + state->samples = xine_xmalloc_aligned (16, 256 * 12 * sizeof (sample_t), &state->samples_base); if (state->samples == NULL) { free (state); return NULL; @@ -896,6 +889,6 @@ void a52_free (a52_state_t * state) { - free (state->samples); + free (state->samples_base); free (state); }