Fri Aug 24 02:28:47 2007

Asterisk developer's documentation


ulaw.h File Reference

u-Law to Signed linear conversion More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define AST_LIN2MU(a)   (__ast_lin2mu[((unsigned short)(a)) >> 2])
#define AST_MULAW(a)   (__ast_mulaw[(a)])

Functions

void ast_ulaw_init (void)
 Set up mu-law conversion table.

Variables

unsigned char __ast_lin2mu [16384]
short __ast_mulaw [256]


Detailed Description

u-Law to Signed linear conversion

Definition in file ulaw.h.


Define Documentation

#define AST_LIN2MU (  )     (__ast_lin2mu[((unsigned short)(a)) >> 2])

Definition at line 40 of file ulaw.h.

Referenced by fill_rxgain(), fill_txgain(), lintoulaw_framein(), load_module(), and make_tone_burst().

#define AST_MULAW (  )     (__ast_mulaw[(a)])

Definition at line 41 of file ulaw.h.

Referenced by ast_dsp_process(), fill_rxgain(), fill_txgain(), load_module(), tdd_feed(), and ulawtolin_framein().


Function Documentation

void ast_ulaw_init ( void   ) 

Set up mu-law conversion table.

To init the ulaw to slinear conversion stuff, this needs to be run.

Definition at line 85 of file ulaw.c.

References f, and linear2ulaw().

Referenced by main().

00086 {
00087    int i;
00088    for (i = 0; i < 256; i++) {
00089       short mu, e, f, y;
00090       static short etab[] = {0,132,396,924,1980,4092,8316,16764};
00091 
00092       mu = 255 - i;
00093       e = (mu & 0x70) / 16;
00094       f = mu & 0x0f;
00095       y = f * (1 << (e + 3));
00096       y += etab[e];
00097       if (mu & 0x80)
00098          y = -y;
00099       __ast_mulaw[i] = y;
00100    }
00101    /* set up the reverse (mu-law) conversion table */
00102    for (i = -32768; i < 32768; i++) {
00103       __ast_lin2mu[((unsigned short)i) >> 2] = linear2ulaw(i);
00104    }
00105 }


Variable Documentation

unsigned char __ast_lin2mu[16384]

Definition at line 36 of file ulaw.c.

short __ast_mulaw[256]

help

Definition at line 37 of file ulaw.c.


Generated on Fri Aug 24 02:28:47 2007 for Asterisk - the Open Source PBX by  doxygen 1.5.1