source: roaraudio/roard/include/codecfilter_speex.h @ 3811:49db840fb4f4

Last change on this file since 3811:49db840fb4f4 was 3811:49db840fb4f4, checked in by phi, 14 years ago

fixed some copyright statements

File size: 2.1 KB
Line 
1//codecfilter_speex.h.h:
2
3/*
4 *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2010
5 *
6 *  This file is part of roard a part of RoarAudio,
7 *  a cross-platform sound system for both, home and professional use.
8 *  See README for details.
9 *
10 *  This file is free software; you can redistribute it and/or modify
11 *  it under the terms of the GNU General Public License version 3
12 *  as published by the Free Software Foundation.
13 *
14 *  RoarAudio 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
26#ifndef _CODECFILTER_SPEEX_H_
27#define _CODECFILTER_SPEEX_H_
28
29#include <roaraudio.h>
30#include <speex/speex.h>
31#include <speex/speex_stereo.h>
32#include <speex/speex_callbacks.h>
33
34struct codecfilter_speex_inst {
35 void * encoder;
36 void * decoder;
37 SpeexBits bits;
38 SpeexStereoState stereo_state;
39 SpeexCallback    stereo_callback;
40 int              stereo;
41 struct roar_stream_server * stream;
42 int frame_size;
43 void     * cd; /* current data */
44 char       cc[ROAR_SPEEX_MAX_CC]; /* buffer for read() and write() */
45 void     * i_rest; /* rest... */
46 int fi_rest;
47 char * o_rest;
48 int fo_rest; /* how much is in rest? */
49
50/*
51 char * ibuf;
52 char * obuf;
53 int out_size;
54 char * i_rest;
55 int s_buf;
56 int fi_rest; /-* how much is in rest? *-/
57*/
58 struct roar_libroar_config_codec * codec_config;
59};
60
61int cf_speex_open(CODECFILTER_USERDATA_T * inst, int codec,
62                                            struct roar_stream_server * info,
63                                            struct roar_codecfilter   * filter);
64
65int cf_speex_close(CODECFILTER_USERDATA_T   inst);
66
67int cf_speex_read(CODECFILTER_USERDATA_T   inst, char * buf, int len);
68int cf_speex_write(CODECFILTER_USERDATA_T   inst, char * buf, int len);
69
70#endif
71
72//ll
Note: See TracBrowser for help on using the repository browser.