Add support for 24bit samples encoded in the LSB of 32 bit words

This commit is contained in:
Lennart Poettering 2009-01-16 18:39:36 +01:00
parent 6dc76d1158
commit 4a13763797
13 changed files with 339 additions and 19 deletions

View file

@ -39,6 +39,11 @@ void pa_sconv_s24be_from_float32ne(unsigned n, const float *a, uint8_t *b);
void pa_sconv_s24be_to_float32re(unsigned n, const uint8_t *a, float *b);
void pa_sconv_s24be_from_float32re(unsigned n, const float *a, uint8_t *b);
void pa_sconv_s24_32be_to_float32ne(unsigned n, const uint8_t *a, float *b);
void pa_sconv_s24_32be_from_float32ne(unsigned n, const float *a, uint8_t *b);
void pa_sconv_s24_32be_to_float32re(unsigned n, const uint8_t *a, float *b);
void pa_sconv_s24_32be_from_float32re(unsigned n, const float *a, uint8_t *b);
void pa_sconv_s32be_to_s16ne(unsigned n, const int32_t *a, int16_t *b);
void pa_sconv_s32be_from_s16ne(unsigned n, const int16_t *a, int32_t *b);
void pa_sconv_s32be_to_s16re(unsigned n, const int32_t *a, int16_t *b);
@ -49,6 +54,11 @@ void pa_sconv_s24be_from_s16ne(unsigned n, const int16_t *a, uint8_t *b);
void pa_sconv_s24be_to_s16re(unsigned n, const uint8_t *a, int16_t *b);
void pa_sconv_s24be_from_s16re(unsigned n, const int16_t *a, uint8_t *b);
void pa_sconv_s24_32be_to_s16ne(unsigned n, const uint8_t *a, int16_t *b);
void pa_sconv_s24_32be_from_s16ne(unsigned n, const int16_t *a, uint8_t *b);
void pa_sconv_s24_32be_to_s16re(unsigned n, const uint8_t *a, int16_t *b);
void pa_sconv_s24_32be_from_s16re(unsigned n, const int16_t *a, uint8_t *b);
#ifdef WORDS_BIGENDIAN
#define pa_sconv_float32be_to_s16ne pa_sconv_s16be_from_float32ne
#define pa_sconv_float32be_from_s16ne pa_sconv_s16be_to_float32ne