diff options
author | Lennart Poettering <lennart@poettering.net> | 2007-10-01 20:16:28 +0000 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2007-10-01 20:16:28 +0000 |
commit | 7d83e5c7816b5e343695a75ba58b32dbe1be969a (patch) | |
tree | bfd1dfc9b7c8f4a2aaf66c1b30e78355dee8c88a /bbuffer.c | |
parent | 762196328ab7e60f1d2908fd5a337d2ca99726dd (diff) |
move all sources down to a seperate src/ tree
git-svn-id: file:///home/lennart/svn/public/libsydney/trunk@34 9ba3c220-e4d3-45a2-8aa3-73fcc9aff6ce
Diffstat (limited to 'bbuffer.c')
-rw-r--r-- | bbuffer.c | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/bbuffer.c b/bbuffer.c deleted file mode 100644 index c8cbaa0..0000000 --- a/bbuffer.c +++ /dev/null @@ -1,77 +0,0 @@ -#include <sys/types.h> - -#include "bbuffer.h" -#include "sydney.h" -#include "malloc.h" -#include "macro.h" - -int sa_bbuffer_init(sa_bbuffer_t *b, unsigned nchannels, size_t sample_size) { - sa_assert(b); - sa_assert(nchannels > 0); - sa_assert(sample_size > 0); - - b->nchannels = nchannels; - b->sample_size = sample_size; - - if (!(b->data = sa_new0(void *, nchannels))) { - b->size = NULL; - return SA_ERROR_OOM; - } - - if (!(b->size = sa_new0(size_t, nchannels))) { - sa_free(b->data); - b->data = NULL; - return SA_ERROR_OOM; - } - - return SA_SUCCESS; -} - -void sa_bbuffer_done(sa_bbuffer_t *b) { - unsigned i; - sa_assert(b); - - if (b->data) { - for (i = 0; i < b->nchannels; i++) - sa_free(b->data[i]); - - sa_free(b->data); - } - - sa_free(b->size); - - b->data = NULL; - b->size = NULL; -} - -void* sa_bbuffer_get(sa_bbuffer_t *b, unsigned channel, size_t size, int interleave) { - sa_assert(b); - sa_assert(channel < b->nchannels); - sa_assert(size > 0); - - if (interleave) { - - if (!b->data[0] || size * b->nchannels > b->size[0]) { - sa_free(b->data[0]); - b->size[0] = size * b->nchannels; - - if (!(b->data[0] = sa_malloc(b->size[0]))) - return NULL; - } - - return (uint8_t*) b->data[0] + (b->sample_size * channel); - - } else { - - if (!b->data[channel] || size > b->size[channel]) { - - sa_free(b->data[channel]); - b->size[channel] = size; - - if (!(b->data[channel] = sa_malloc(size))) - return NULL; - } - - return b->data[channel]; - } -} |