如何解决Freeswitch 不回头
我试图在 Freeswitch 中摆脱控制通过 session.streamFile() 播放的音频。为此,我尝试了 this documentation 的第三个示例。
这里几乎所有东西都在工作,但 DTMF 1 (seek:-500) 不回寻。它总是从头开始(如seek:0)。 这可能是什么原因?我正在使用这个例子。
代码:
var exit = false;
function onInput( session,type,data,arg ) {
if ( type == "dtmf" ) {
console_log( "info","Got digit " + data.digit + "\n" );
if ( data.digit == "*" ) {
exit = true;
return( false );
}
else if ( data.digit == "0" ) {
return( "seek:0" );
}
else if ( data.digit == "1" ) {
return( "seek:-500" );
}
else if ( data.digit == "2" ) {
return( "pause" );
}
else if ( data.digit == "3" ) {
return( "seek:+500" );
}
return( true );
}
}
if ( session.ready( ) ) {
session.answer( );
while ( session.ready( ) && ! exit ) {
session.streamFile( "<path to WAV>",onInput );
}
if ( session.ready( ) ) {
session.hangup( );
}
}
解决方法
同时我找到了原因。它属于采样率。 Freeswitch 更喜欢采样率为 16000 的 wav。其他人也在工作,但在搜索等方面遇到麻烦。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。