diff options
author | Mark Spencer <markster@digium.com> | 2005-01-24 02:59:17 +0000 |
---|---|---|
committer | Mark Spencer <markster@digium.com> | 2005-01-24 02:59:17 +0000 |
commit | 3bafe1a8a5f8714f744ca20a6694778c6620fe08 (patch) | |
tree | e4787b7f4a7d90f14b9cf1fd3b5bcb58921c1cf7 | |
parent | 91805d8f8e850d25cecbc79ca5affbca72b4fe4a (diff) |
Fix chan_modem_i4l (bug #3410)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4885 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rwxr-xr-x | channels/chan_modem_i4l.c | 4 | ||||
-rwxr-xr-x | include/asterisk/alaw.h | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/channels/chan_modem_i4l.c b/channels/chan_modem_i4l.c index 2e97ee478..d236ce75d 100755 --- a/channels/chan_modem_i4l.c +++ b/channels/chan_modem_i4l.c @@ -420,7 +420,7 @@ static struct ast_frame *i4l_read(struct ast_modem_pvt *p) if (!f) return NULL; } else { - *(b++) = AST_A2LIN(result[x]); + *(b++) = AST_ALAW(result[x]); p->obuflen += 2; } } @@ -480,7 +480,7 @@ static int i4l_write(struct ast_modem_pvt *p, struct ast_frame *f) return -1; } for (x=0;x<f->datalen/2;x++) { - b = AST_ALAW(((short *)f->data)[x]); + b = AST_LIN2A(((short *)f->data)[x]); result[bpos++] = b; if (b == CHAR_DLE) result[bpos++]=b; diff --git a/include/asterisk/alaw.h b/include/asterisk/alaw.h index ed05e46b2..9a0664d0e 100755 --- a/include/asterisk/alaw.h +++ b/include/asterisk/alaw.h @@ -29,6 +29,6 @@ extern unsigned char __ast_lin2a[8192]; extern short __ast_alaw[256]; #define AST_LIN2A(a) (__ast_lin2a[((unsigned short)(a)) >> 3]) -#define AST_ALAW(a) (__ast_alaw[(a)]) +#define AST_ALAW(a) (__ast_alaw[(int)(a)]) #endif |