经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 数据库/运维 » Linux/Shell » 查看文章
FreeSWITCH的moh使用笔记
来源:cnblogs  作者:Mike_Zhang  时间:2023/10/30 9:15:54  对本文有异议

操作系统 :CentOS 7.6_x64

FreeSWITCH版本 :1.10.9

之前写过FreeSWITCH安装的文章,今天整理下moh使用过程中遇到的问题及解决方案,并提供moh音频下载途径。FreeSWITCH安装的文章可参考如下链接:

docker构建FreeSWITCH编译环境及打包
使用docker构建可动态启动的FreeSWITCH实例
CentOS7环境源码安装freeswitch1.10

一、问题描述

FreeSWITCH有hold_music功能,在hold时会触发,体现在sdp里面就是a头里面是 sendonly 属性:

 如果没有启用local_stream模块,触发moh时会报如下错误:

  1. [ERR] switch_core_file.c:346 Invalid file format [local_stream] for [moh]!

 如果没有下载moh音频,触发moh时会报如下错误:

  1. [ERR] mod_local_stream.c:883 Unknown source default

 二、安装moh

1、安装local_stream模块

文件:freeswitch-1.10.9.-release/modules.conf

模块名称:formats/mod_local_stream

 2、安装moh音频

  • 安装8k音频

make moh-install

下载文件路径:

https://files.freeswitch.org/releases/sounds/freeswitch-sounds-music-8000-1.0.52.tar.gz

  • 安装16k音频

make hd-moh-install

下载文件路径:

https://files.freeswitch.org/releases/sounds/freeswitch-sounds-music-16000-1.0.52.tar.gz

  • 安装32k音频

make uhd-moh-install

下载文件路径:

https://files.freeswitch.org/releases/sounds/freeswitch-sounds-music-32000-1.0.52.tar.gz

  • 安装48k音频

make cd-moh-install

下载文件路径:

https://files.freeswitch.org/releases/sounds/freeswitch-sounds-music-48000-1.0.52.tar.gz

 安装完毕的目录结构:

/usr/local/freeswitch/sounds/music

 如果下载过慢,可以从如下渠道获取:

关注微信公众号(聊聊博文,文末可扫码)后回复 20231029 获取。

三、使用moh

1、启用local_stream模块

文件:/usr/local/freeswitch/conf/autoload_configs/modules.conf.xml

模块名称:mod_local_stream

 2、配置local_stream模块

配置文件路径:conf/autoload_configs/local_stream.conf.xml

配置文件内容:

  1. <configuration name="local_stream.conf" description="stream files from local dir">
  2. <!-- fallback to default if requested moh class isn't found -->
  3. <directory name="default" path="$${sounds_dir}/music/8000">
  4. <param name="rate" value="8000"/>
  5. <param name="shuffle" value="true"/>
  6. <param name="channels" value="1"/>
  7. <param name="interval" value="20"/>
  8. <param name="timer-name" value="soft"/>
  9. <!-- list of short files to break in with every so often -->
  10. <!--<param name="chime-list" value="file1.wav,file2.wav"/>-->
  11. <!-- frequency of break-in (seconds)-->
  12. <!--<param name="chime-freq" value="30"/>-->
  13. <!-- limit to how many seconds the file will play -->
  14. <!--<param name="chime-max" value="500"/>-->
  15. </directory>
  16.  
  17. <directory name="moh/8000" path="$${sounds_dir}/music/8000">
  18. <param name="rate" value="8000"/>
  19. <param name="shuffle" value="true"/>
  20. <param name="channels" value="1"/>
  21. <param name="interval" value="20"/>
  22. <param name="timer-name" value="soft"/>
  23. </directory>
  24.  
  25. <directory name="moh/16000" path="$${sounds_dir}/music/16000">
  26. <param name="rate" value="16000"/>
  27. <param name="shuffle" value="true"/>
  28. <param name="channels" value="1"/>
  29. <param name="interval" value="20"/>
  30. <param name="timer-name" value="soft"/>
  31. </directory>
  32.  
  33. <directory name="moh/32000" path="$${sounds_dir}/music/32000">
  34. <param name="rate" value="32000"/>
  35. <param name="shuffle" value="true"/>
  36. <param name="channels" value="1"/>
  37. <param name="interval" value="20"/>
  38. <param name="timer-name" value="soft"/>
  39. </directory>
  40.  
  41. <directory name="moh/48000" path="$${sounds_dir}/music/48000">
  42. <param name="rate" value="48000"/>
  43. <param name="shuffle" value="true"/>
  44. <param name="channels" value="1"/>
  45. <param name="interval" value="10"/>
  46. <param name="timer-name" value="soft"/>
  47. </directory>
  48.  
  49. </configuration>

3、配置hold_music

文件:/usr/local/freeswitch/conf/vars.xml

配置内容:

  1. <X-PRE-PROCESS cmd="set" data="hold_music=local_stream://moh"/>

四、资源下载

本文涉及的音频文件,可以从如下途径获取:

关注微信公众号(聊聊博文)后回复 20231029 获取。

 

原文链接:https://www.cnblogs.com/MikeZhang/p/fsMoh20231029.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号