Freeswitch 不回头

Posted

技术标签:

【中文标题】Freeswitch 不回头【英文标题】:Freeswitch doesn't seek back 【发布时间】:2021-08-02 08:11:01 【问题描述】:

我正在尝试摆脱通过 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( );
 
  
 

【问题讨论】:

请出示您的示例代码。 @zer09 刚刚调整了问题并添加了代码。但这几乎是不变的例子。我正在使用它就像发布的一样(只是删除了文件路径) 【参考方案1】:

同时我找到了原因。它属于采样率。 Freeswitch 更喜欢采样率为 16000 的 wav。其他人也在工作,但在寻找等方面遇到了麻烦。

【讨论】:

以上是关于Freeswitch 不回头的主要内容,如果未能解决你的问题,请参考以下文章

freeswitch简介

CentOS 5下freeswitch中集成使用ekho实现TTS功能三

Centos 7 安装freeswitch-1.10.3 make freeswitch报错 求大神帮助

freeswitch对接其它SIP设备

FreeSWITCH快速录音

freeswitch订阅会议相关通知