1#ifndef foosconv_s16befoo
2#define foosconv_s16befoo
3
4/***
5  This file is part of PulseAudio.
6
7  Copyright 2004-2006 Lennart Poettering
8
9  PulseAudio is free software; you can redistribute it and/or modify
10  it under the terms of the GNU Lesser General Public License as published
11  by the Free Software Foundation; either version 2.1 of the License,
12  or (at your option) any later version.
13
14  PulseAudio is distributed in the hope that it will be useful, but
15  WITHOUT ANY WARRANTY; without even the implied warranty of
16  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17  General Public License for more details.
18
19  You should have received a copy of the GNU Lesser General Public License
20  along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
21***/
22
23#include <inttypes.h>
24
25void pa_sconv_s16be_to_float32ne(unsigned n, const int16_t *a, float *b);
26void pa_sconv_s16be_from_float32ne(unsigned n, const float *a, int16_t *b);
27void pa_sconv_s16be_to_float32re(unsigned n, const int16_t *a, float *b);
28void pa_sconv_s16be_from_float32re(unsigned n, const float *a, int16_t *b);
29
30void pa_sconv_s32be_to_float32ne(unsigned n, const int32_t *a, float *b);
31void pa_sconv_s32be_from_float32ne(unsigned n, const float *a, int32_t *b);
32void pa_sconv_s32be_to_float32re(unsigned n, const int32_t *a, float *b);
33void pa_sconv_s32be_from_float32re(unsigned n, const float *a, int32_t *b);
34
35void pa_sconv_s24be_to_float32ne(unsigned n, const uint8_t *a, float *b);
36void pa_sconv_s24be_from_float32ne(unsigned n, const float *a, uint8_t *b);
37void pa_sconv_s24be_to_float32re(unsigned n, const uint8_t *a, float *b);
38void pa_sconv_s24be_from_float32re(unsigned n, const float *a, uint8_t *b);
39
40void pa_sconv_s24_32be_to_float32ne(unsigned n, const uint32_t *a, float *b);
41void pa_sconv_s24_32be_from_float32ne(unsigned n, const float *a, uint32_t *b);
42void pa_sconv_s24_32be_to_float32re(unsigned n, const uint8_t *a, float *b);
43void pa_sconv_s24_32be_from_float32re(unsigned n, const float *a, uint8_t *b);
44
45void pa_sconv_s32be_to_s16ne(unsigned n, const int32_t *a, int16_t *b);
46void pa_sconv_s32be_from_s16ne(unsigned n, const int16_t *a, int32_t *b);
47void pa_sconv_s32be_to_s16re(unsigned n, const int32_t *a, int16_t *b);
48void pa_sconv_s32be_from_s16re(unsigned n, const int16_t *a, int32_t *b);
49
50void pa_sconv_s24be_to_s16ne(unsigned n, const uint8_t *a, int16_t *b);
51void pa_sconv_s24be_from_s16ne(unsigned n, const int16_t *a, uint8_t *b);
52void pa_sconv_s24be_to_s16re(unsigned n, const uint8_t *a, int16_t *b);
53void pa_sconv_s24be_from_s16re(unsigned n, const int16_t *a, uint8_t *b);
54
55void pa_sconv_s24_32be_to_s16ne(unsigned n, const uint32_t *a, int16_t *b);
56void pa_sconv_s24_32be_from_s16ne(unsigned n, const int16_t *a, uint32_t *b);
57void pa_sconv_s24_32be_to_s16re(unsigned n, const uint8_t *a, int16_t *b);
58void pa_sconv_s24_32be_from_s16re(unsigned n, const int16_t *a, uint8_t *b);
59
60#ifdef WORDS_BIGENDIAN
61#define pa_sconv_float32be_to_s16ne pa_sconv_s16be_from_float32ne
62#define pa_sconv_float32be_from_s16ne pa_sconv_s16be_to_float32ne
63#define pa_sconv_float32le_to_s16ne pa_sconv_s16be_from_float32re
64#define pa_sconv_float32le_from_s16ne pa_sconv_s16be_to_float32re
65#endif
66
67#endif
68