Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
isdn
i4l
isdn_audio.h
Go to the documentation of this file.
1
/* $Id: isdn_audio.h,v 1.1.2.2 2004/01/12 22:37:18 keil Exp $
2
*
3
* Linux ISDN subsystem, audio conversion and compression (linklevel).
4
*
5
* Copyright 1994-1999 by Fritz Elfert (
[email protected]
)
6
*
7
* This software may be used and distributed according to the terms
8
* of the GNU General Public License, incorporated herein by reference.
9
*
10
*/
11
12
#define DTMF_NPOINTS 205
/* Number of samples for DTMF recognition */
13
typedef
struct
adpcm_state
{
14
int
a
;
15
int
d
;
16
int
word
;
17
int
nleft
;
18
int
nbits
;
19
}
adpcm_state
;
20
21
typedef
struct
dtmf_state
{
22
char
last
;
23
char
llast
;
24
int
idx
;
25
int
buf
[
DTMF_NPOINTS
];
26
}
dtmf_state
;
27
28
typedef
struct
silence_state
{
29
int
state
;
30
unsigned
int
idx
;
31
}
silence_state
;
32
33
extern
void
isdn_audio_ulaw2alaw
(
unsigned
char
*,
unsigned
long
);
34
extern
void
isdn_audio_alaw2ulaw
(
unsigned
char
*,
unsigned
long
);
35
extern
adpcm_state
*
isdn_audio_adpcm_init
(
adpcm_state
*,
int
);
36
extern
int
isdn_audio_adpcm2xlaw
(
adpcm_state
*,
int
,
unsigned
char
*,
unsigned
char
*,
int
);
37
extern
int
isdn_audio_xlaw2adpcm
(
adpcm_state
*,
int
,
unsigned
char
*,
unsigned
char
*,
int
);
38
extern
void
isdn_audio_calc_dtmf
(
modem_info
*,
unsigned
char
*,
int
,
int
);
39
extern
void
isdn_audio_eval_dtmf
(
modem_info
*);
40
dtmf_state
*
isdn_audio_dtmf_init
(
dtmf_state
*);
41
extern
void
isdn_audio_calc_silence
(
modem_info
*,
unsigned
char
*,
int
,
int
);
42
extern
void
isdn_audio_eval_silence
(
modem_info
*);
43
silence_state
*
isdn_audio_silence_init
(
silence_state
*);
44
extern
void
isdn_audio_put_dle_code
(
modem_info
*,
u_char
);
Generated on Thu Jan 10 2013 13:42:17 for Linux Kernel by
1.8.2