Allow the native formats of a channel to influence the audio that is going to the engine. The best format will try to be chosen with an ultimate fallback to signed linear if possible.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74570 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Joshua Colp
2007-07-11 16:19:00 +00:00
parent b314d6ee08
commit f8e605fe25
3 changed files with 11 additions and 6 deletions

View File

@@ -352,7 +352,7 @@ static int speech_create(struct ast_channel *chan, void *data)
u = ast_module_user_add(chan);
/* Request a speech object */
speech = ast_speech_new(data, AST_FORMAT_SLINEAR);
speech = ast_speech_new(data, chan->nativeformats);
if (speech == NULL) {
/* Not available */
pbx_builtin_setvar_helper(chan, "ERROR", "1");
@@ -572,7 +572,7 @@ static int speech_background(struct ast_channel *chan, void *data)
oldreadformat = chan->readformat;
/* Change read format to be signed linear */
if (ast_set_read_format(chan, AST_FORMAT_SLINEAR)) {
if (ast_set_read_format(chan, speech->format)) {
ast_module_user_remove(u);
return -1;
}