diff options
Diffstat (limited to 'net/asterisk-devel/files/patch-formats::format_g729.c')
-rw-r--r-- | net/asterisk-devel/files/patch-formats::format_g729.c | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/net/asterisk-devel/files/patch-formats::format_g729.c b/net/asterisk-devel/files/patch-formats::format_g729.c new file mode 100644 index 000000000000..a255fc351e71 --- /dev/null +++ b/net/asterisk-devel/files/patch-formats::format_g729.c @@ -0,0 +1,63 @@ + +$FreeBSD$ + +--- formats/format_g729.c.orig Mon Sep 8 19:48:07 2003 ++++ formats/format_g729.c Fri Jan 30 01:47:34 2004 +@@ -45,7 +45,7 @@ + struct ast_frame fr; /* Frame information */ + char waste[AST_FRIENDLY_OFFSET]; /* Buffer for sending frames, etc */ + char empty; /* Empty character */ +- unsigned char g729[20]; /* Two Real G729 Frames */ ++ unsigned char g729[10]; /* One Real G729 Frame */ + }; + + +@@ -126,11 +126,11 @@ + s->fr.frametype = AST_FRAME_VOICE; + s->fr.subclass = AST_FORMAT_G729A; + s->fr.offset = AST_FRIENDLY_OFFSET; +- s->fr.samples = 160; +- s->fr.datalen = 20; ++ s->fr.samples = 80; ++ s->fr.datalen = 10; + s->fr.mallocd = 0; + s->fr.data = s->g729; +- if ((res = read(s->fd, s->g729, 20)) != 20) { ++ if ((res = read(s->fd, s->g729, 10)) != 10) { + if (res) + ast_log(LOG_WARNING, "Short read (%d) (%s)!\n", res, strerror(errno)); + return NULL; +@@ -150,12 +150,12 @@ + ast_log(LOG_WARNING, "Asked to write non-G729 frame (%d)!\n", f->subclass); + return -1; + } +- if (f->datalen % 20) { +- ast_log(LOG_WARNING, "Invalid data length, %d, should be multiple of 20\n", f->datalen); ++ if (f->datalen % 10) { ++ ast_log(LOG_WARNING, "Invalid data length, %d, should be multiple of 10\n", f->datalen); + return -1; + } + if ((res = write(fs->fd, f->data, f->datalen)) != f->datalen) { +- ast_log(LOG_WARNING, "Bad write (%d/20): %s\n", res, strerror(errno)); ++ ast_log(LOG_WARNING, "Bad write (%d/10): %s\n", res, strerror(errno)); + return -1; + } + return 0; +@@ -174,7 +174,7 @@ + cur = lseek(fs->fd, 0, SEEK_CUR); + max = lseek(fs->fd, 0, SEEK_END); + +- bytes = 20 * (sample_offset / 160); ++ bytes = 10 * (sample_offset / 80); + if (whence == SEEK_SET) + offset = bytes; + else if (whence == SEEK_CUR || whence == SEEK_FORCECUR) +@@ -202,7 +202,7 @@ + { + off_t offset; + offset = lseek(fs->fd, 0, SEEK_CUR); +- return (offset/20)*160; ++ return (offset/10)*80; + } + + int load_module() |