aroarfw
audio.h
Go to the documentation of this file.
1 //audio.h:
2 
3 /*
4  * Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2010-2012
5  *
6  * This file is part of aroarfw, a RoarAudio framework for
7  * embedded systems (µControlers).
8  *
9  * This file is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License version 3
11  * or (at your option) any later version as published by
12  * the Free Software Foundation.
13  *
14  * aroarfw is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this software; see the file COPYING. If not, write to
21  * the Free Software Foundation, 51 Franklin Street, Fifth Floor,
22  * Boston, MA 02110-1301, USA.
23  */
24 
25 #ifndef _AROARFW_AUDIO_H_
26 #define _AROARFW_AUDIO_H_
27 
29 typedef enum {
36 } rchannels_t;
37 
39 typedef enum {
55  RCODEC_FLAC = 0x11,
65  RCODEC_OGG = 0x17,
77  RCODEC_RIFX = 0x22,
79  RCODEC_AU = 0x24,
81  RCODEC_AIFF = 0x28,
83  RCODEC_ALAW = 0x30,
91  RCODEC_MULAW = 0x34,
99  RCODEC_GSM = 0x38,
101  RCODEC_GSM49 = 0x39,
103  RCODEC_BRR = 0x3c,
107  RCODEC_MIDI = 0x60,
114 
116  RCODEC_RAUM = 0x1c,
146  RCODEC_RDS = 0x80,
148  RCODEC_USER0 = 0x90,
150  RCODEC_USER1 = 0x91,
152  RCODEC_USER2 = 0x92,
154  RCODEC_USER3 = 0x93,
156  RCODEC_USER4 = 0x94,
158  RCODEC_USER5 = 0x95,
160  RCODEC_USER6 = 0x96,
162  RCODEC_USER7 = 0x97,
164  RCODEC_USER8 = 0x98,
166  RCODEC_USER9 = 0x99,
180 } rcodec_t;
181 
183 typedef enum {
190 } rspeex_mode_t;
191 
193 #define RDEFAULT_AU_RATE 44100
194 
196 #define RDEFAULT_AU_BITS 16
197 
199 #define RDEFAULT_AU_CHANNELS RCHANNELS_STEREO
200 
202 #define RSPEEX_MAGIC "RoarSpeex"
203 
204 #define RSPEEX_MAGIC_LEN 9
205 
206 #define RCELT_MAGIC "RoarCELT0"
207 
208 #define RCELT_MAGIC_LEN 9
209 
211 typedef struct raudio_info {
213  unsigned int rate;
215  unsigned int bits;
220 } raudio_info_t;
221 
222 #endif
223 
224 //ll