代码浪人 2024-06-04 16:55 采纳率: 100%
浏览 7
已结题

freeswitch soundtouch 变声测试失败

系统环境

我用的是debian系统,freeswitch1.10.7
添加了依赖


apt-get install libsoundtouch-dev libsoundtouch1

安装过程

然后就是到源 src/mod/applications/mod_soundtouch 下进行
make && make install

然后在fs_cli 加载了
load mod_soundtouch

使用

originate user/1005 &bridge(user/1003)

soundtouch call-uuid start 0.3p

问题

听不到变声后的效果,只有滋啦滋啦的噪音,用
soundtouch call-uuid stop
命令可以恢复正常通话。

尝试

有人说是浮点问题,不知道在哪里添加这个值。下面两个说的,感觉挺有道理的,但是我不知道./configure --enable-integer-samples在哪,我尝试在源文件/src下执行。重新编译,但是失败了,还是和上面效果一样

img

还有

img

  • 写回答

2条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-06-04 16:55
    关注

    引自免费微信小程序:皆我百晓生

    看起来你需要解决的是Freeswitch和soundtouch之间的兼容性问题,这可能是由于它们对音频样本格式(浮点数或整数)的不同处理导致的。按照提供的建议,你需要确保soundtouch库被配置为使用整数样本。这里是一个详细的步骤指南来帮助你重新编译soundtouch:

    首先,你需要下载soundtouch源码。如果你还没有,可以通过以下步骤获取:

    1. 打开终端并切换到一个临时目录,例如/tmp:
    cd /tmp
    
    1. 下载soundtouch源码包,假设当前最新版本为2.1.2:
    wget https://github.com/soundtouch/soundtouch/archive/v2.1.2.tar.gz
    
    1. 解压下载的tar文件:
    tar xvf v2.1.2.tar.gz
    
    1. 进入解压缩后的目录:
    cd soundtouch-2.1.2
    

    接下来,我们开始配置、编译和安装soundtouch:

    1. 配置soundtouch,启用整数样本支持:
    ./configure --enable-integer-samples
    
    1. 如果你的系统上已经安装了libsoundtouch,并且你想覆盖原来的库,你需要先卸载旧的库(如果有):
    sudo apt-get remove libsoundtouch-dev libsoundtouch1
    
    1. 现在,我们可以编译和安装soundtouch:
    make
    sudo make install
    

    完成上述步骤后,你应该有一个使用整数样本的soundtouch库。为了确认更改是否生效,你可以查看编译后的库文件的信息,通常可以在/usr/local/lib/usr/lib中找到libsoundtouch.solibsoundtouch.a,检查其链接信息是否有整数样本相关的标志。

    现在回到Freeswitch,确保你使用的版本也支持与整数样本的soundtouch库配合工作。如果可能的话,升级到一个已知与整数sample soundtouch兼容的版本。

    再次启动Freeswitch,加载mod_soundtouch模块,然后尝试使用相同的测试场景。如果一切正常,你现在应该能听到正常的变声效果,而不是噪音。

    注意:这些步骤可能会根据你的具体环境有所不同,特别是关于库路径和卸载旧库的部分。如果你遇到任何问题,比如找不到特定的库或命令,可能需要查阅更具体的文档或针对你的Linux发行版的指导。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 6月6日
  • 已采纳回答 6月4日
  • 修改了问题 6月4日
  • 创建了问题 6月4日

悬赏问题

  • ¥15 yolov5目标检测并显示目标出现的时间或视频帧
  • ¥15 电视版的优酷可以设置电影连续播放吗?
  • ¥50 复现论文;matlab代码编写
  • ¥30 echarts 3d地图怎么实现一进来页面散点数据和卡片一起轮播
  • ¥15 数字图像的降噪滤波增强
  • ¥15 心碎了,为啥我的神经网络训练的时候第二个批次反向传播会报错呀,第一个批次都没有问题
  • ¥15 MSR2680-XS路由器频繁卡顿问题
  • ¥15 VB6可以成功读取的文件,用C#读不了
  • ¥15 如何使用micpyhon解析Modbus RTU返回指定站号的湿度值,并确保正确?
  • ¥15 C++ 句柄后台鼠标拖动如何实现