diff options
Diffstat (limited to 'src/converter.h')
-rw-r--r-- | src/converter.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/converter.h b/src/converter.h index 39338c2..a3ec182 100644 --- a/src/converter.h +++ b/src/converter.h @@ -14,6 +14,12 @@ typedef struct sa_converter sa_converter_t; +typedef enum { + SA_INTERLEAVE_YES, /* samples are interleaved; left, right, left, right */ + SA_INTERLEAVE_NO, /* samples are managed in seperate blocks */ + SA_INTERLEAVE_ANY /* we don't care or don't know if the samples are interleaved or not */ +} sa_interleave_t; + struct sa_converter { sa_pcm_format_t from_pcm_format, to_pcm_format; unsigned from_nchannels, to_nchannels; @@ -63,14 +69,14 @@ void sa_converter_done(sa_converter_t *c); int sa_converter_go( sa_converter_t *c, - const void *const src[], const size_t sstr[], int sinterleave, - void **dst[], size_t *dstr[], int dinterleave, + const void *const src[], const size_t sstr[], sa_interleave_t sinterleave, + void **dst[], size_t *dstr[], sa_interleave_t dinterleave, size_t *size); int sa_converter_go_interleaved( sa_converter_t *c, const void *const data, - void **dst[], size_t *dstr[], int dinterleave, + void **dst[], size_t *dstr[], sa_interleave_t dinterleave, size_t *size); void sa_converter_set_volume(sa_converter_t *c, const int32_t vol[]); |