[Asterisk-cvs] asterisk channel.c,1.255,1.256
kpfleming
kpfleming
Tue Nov 1 13:56:10 CST 2005
Update of /usr/cvsroot/asterisk
In directory mongoose.digium.com:/tmp/cvs-serv14727
Modified Files:
channel.c
Log Message:
use a writeable frame (some channel drivers/transcoders may modify the frame after it has been passed to ast_write())
Index: channel.c
===================================================================
RCS file: /usr/cvsroot/asterisk/channel.c,v
retrieving revision 1.255
retrieving revision 1.256
diff -u -d -r1.255 -r1.256
--- channel.c 1 Nov 2005 17:22:25 -0000 1.255
+++ channel.c 1 Nov 2005 18:48:05 -0000 1.256
@@ -3933,19 +3933,19 @@
/* nothing to do */
}
-static short normal_silence_buf[160] = { 0, };
-static struct ast_frame normal_silence_frame = {
- .frametype = AST_FRAME_VOICE,
- .subclass = AST_FORMAT_SLINEAR,
- .data = normal_silence_buf,
- .samples = 160,
- .datalen = sizeof(normal_silence_buf),
-};
-
static int silence_generator_generate(struct ast_channel *chan, void *data, int len, int samples)
{
if (samples == 160) {
- if (ast_write(chan, &normal_silence_frame))
+ short buf[160] = { 0, };
+ struct ast_frame frame = {
+ .frametype = AST_FRAME_VOICE,
+ .subclass = AST_FORMAT_SLINEAR,
+ .data = buf,
+ .samples = 160,
+ .datalen = sizeof(buf),
+ };
+
+ if (ast_write(chan, &frame))
return -1;
} else {
short buf[samples];
@@ -3953,7 +3953,7 @@
struct ast_frame frame = {
.frametype = AST_FRAME_VOICE,
.subclass = AST_FORMAT_SLINEAR,
- .data = normal_silence_buf,
+ .data = buf,
.samples = samples,
.datalen = sizeof(buf),
};
More information about the svn-commits
mailing list