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_s24le_from_float32ne(unsigned n, const float *a, uint8_t *b);
void pa_sconv_s24le_to_float32re(unsigned n, const uint8_t *a, float *b);
void pa_sconv_s24le_from_float32re(unsigned n, const float *a, uint8_t *b);
void pa_sconv_s24_32le_to_float32ne(unsigned n, const uint32_t *a, float *b);
void pa_sconv_s24_32le_from_float32ne(unsigned n, const float *a, uint32_t *b);
void pa_sconv_s24_32le_to_float32re(unsigned n, const uint32_t *a, float *b);
void pa_sconv_s24_32le_from_float32re(unsigned n, const float *a, uint32_t *b);
void pa_sconv_s32le_to_s16ne(unsigned n, const int32_t *a, int16_t *b);
void pa_sconv_s32le_from_s16ne(unsigned n, const int16_t *a, int32_t *b);
void pa_sconv_s32le_to_s16re(unsigned n, const int32_t *a, int16_t *b);
@ -49,6 +54,11 @@ void pa_sconv_s24le_from_s16ne(unsigned n, const int16_t *a, uint8_t *b);
void pa_sconv_s24le_to_s16re(unsigned n, const uint8_t *a, int16_t *b);
void pa_sconv_s24le_from_s16re(unsigned n, const int16_t *a, uint8_t *b);
void pa_sconv_s24_32le_to_s16ne(unsigned n, const uint32_t *a, int16_t *b);
void pa_sconv_s24_32le_from_s16ne(unsigned n, const int16_t *a, uint32_t *b);
void pa_sconv_s24_32le_to_s16re(unsigned n, const uint32_t *a, int16_t *b);
void pa_sconv_s24_32le_from_s16re(unsigned n, const int16_t *a, uint32_t *b);
#ifndef WORDS_BIGENDIAN
#define pa_sconv_float32be_to_s16ne pa_sconv_s16le_from_float32re
#define pa_sconv_float32be_from_s16ne pa_sconv_s16le_to_float32re