codec_a_mu.c - translate between alaw and ulaw directly More...
#include "asterisk.h"
#include "asterisk/module.h"
#include "asterisk/translate.h"
#include "asterisk/alaw.h"
#include "asterisk/ulaw.h"
#include "asterisk/utils.h"
#include "ex_ulaw.h"
#include "ex_alaw.h"
Go to the source code of this file.
Defines | |
#define | BUFFER_SAMPLES 8000 |
Functions | |
static int | alawtoulaw_framein (struct ast_trans_pvt *pvt, struct ast_frame *f) |
convert frame data and store into the buffer | |
AST_MODULE_INFO_STANDARD (ASTERISK_GPL_KEY,"A-law and Mulaw direct Coder/Decoder") | |
static int | load_module (void) |
static int | ulawtoalaw_framein (struct ast_trans_pvt *pvt, struct ast_frame *f) |
convert frame data and store into the buffer | |
static int | unload_module (void) |
standard module glue | |
Variables | |
static unsigned char | a2mu [256] |
static struct ast_translator | alawtoulaw |
static unsigned char | mu2a [256] |
static struct ast_translator | ulawtoalaw |
codec_a_mu.c - translate between alaw and ulaw directly
Definition in file codec_a_mu.c.
#define BUFFER_SAMPLES 8000 |
Definition at line 40 of file codec_a_mu.c.
Referenced by gsmtolin_framein(), ilbctolin_framein(), lintogsm_framein(), lintolpc10_framein(), lpc10tolin_framein(), and speextolin_framein().
static int alawtoulaw_framein | ( | struct ast_trans_pvt * | pvt, | |
struct ast_frame * | f | |||
) | [static] |
convert frame data and store into the buffer
Definition at line 50 of file codec_a_mu.c.
References ast_frame::data, ast_trans_pvt::datalen, ast_trans_pvt::outbuf, ast_frame::ptr, ast_trans_pvt::samples, ast_frame::samples, and ast_trans_pvt::uc.
AST_MODULE_INFO_STANDARD | ( | ASTERISK_GPL_KEY | , | |
"A-law and Mulaw direct Coder/Decoder" | ||||
) |
static int load_module | ( | void | ) | [static] |
Definition at line 113 of file codec_a_mu.c.
References AST_ALAW, AST_LIN2A, AST_LIN2MU, AST_MODULE_LOAD_FAILURE, AST_MODULE_LOAD_SUCCESS, AST_MULAW, ast_register_translator, and ast_unregister_translator().
00114 { 00115 int res; 00116 int x; 00117 00118 for (x=0;x<256;x++) { 00119 mu2a[x] = AST_LIN2A(AST_MULAW(x)); 00120 a2mu[x] = AST_LIN2MU(AST_ALAW(x)); 00121 } 00122 res = ast_register_translator(&alawtoulaw); 00123 if (!res) 00124 res = ast_register_translator(&ulawtoalaw); 00125 else 00126 ast_unregister_translator(&alawtoulaw); 00127 if (res) 00128 return AST_MODULE_LOAD_FAILURE; 00129 return AST_MODULE_LOAD_SUCCESS; 00130 }
static int ulawtoalaw_framein | ( | struct ast_trans_pvt * | pvt, | |
struct ast_frame * | f | |||
) | [static] |
convert frame data and store into the buffer
Definition at line 66 of file codec_a_mu.c.
References ast_frame::data, ast_trans_pvt::datalen, ast_trans_pvt::outbuf, ast_frame::ptr, ast_trans_pvt::samples, ast_frame::samples, and ast_trans_pvt::uc.
static int unload_module | ( | void | ) | [static] |
standard module glue
Definition at line 103 of file codec_a_mu.c.
References ast_unregister_translator().
00104 { 00105 int res; 00106 00107 res = ast_unregister_translator(&ulawtoalaw); 00108 res |= ast_unregister_translator(&alawtoulaw); 00109 00110 return res; 00111 }
unsigned char a2mu[256] [static] |
Definition at line 43 of file codec_a_mu.c.
struct ast_translator alawtoulaw [static] |
Definition at line 81 of file codec_a_mu.c.
unsigned char mu2a[256] [static] |
Definition at line 42 of file codec_a_mu.c.
struct ast_translator ulawtoalaw [static] |
Definition at line 91 of file codec_a_mu.c.