编解码器:Opus编码器内置FEC功能测试

本文详细介绍了对Opus编码器内置的前向错误校正(FEC)功能的测试过程。在48k采样率、16k码率、20ms帧长的条件下,发现丢包率低于20%时,Opus不会启用FEC;而丢包率超过20%,FEC能显著改善音质。同时,补充了不同语音长度和采样率下的丢包率阈值测试结果。
摘要由CSDN通过智能技术生成

      Opus功能十分强大,内置了FEC和DTX功能,Opus对FEC的使用方式是动态的,也就是说Opus能根据对端反馈的丢包率来动态的使用FEC功能,48k采样率,单声道、16k码率并且帧长度为20ms时,这种情况下只有在丢包率高于20%的时候Opus才会使用FEC,今天主要对Opus在这种条件下的FEC的功能进行了测试,本问是基于Opus接口的那篇文章写的,如果没看过可以链接到 编解码器:Opus编解码器的接口及使用

    找一段pcm音频原始文件,用作编解码器操作数据的源文件,取名为test.pcm。然后进入到opus_demo.exe文件的目录下SHIFT+右键点击在此处打开命令窗口。

如图在opus_demo.exe可执行文件目录下打开命令台,之后就要对你的pcm源文件进行编码和解码,测试FEC的纠错功能。利用opus_demo演示程序对pcm文件进行处理。

根据上面链接文章中的指令参数调用表格,写出如下指令:

opus_demo voip 48000 1 16000 path\to\test.pcm path\to\test_nofec_0.pcm
opus_demo voip 48000 1 16000 -loss 5  path\to\test.pcm path\to\test_nofec_5.pcm
opus_demo voip 48000 1 16000 -loss 10 path\to\test.pcm path\to\test_nofec_10.pcm
opus_demo voip 48000 1 16000 -loss 15 path\to\test.pcm path\to\test_nofec_15.pcm
opus_demo voip 48000 1 16000 -loss 20 path\to\test.pcm path\to\test_nofec_20.pcm
opus_demo voip 48000 1 16000 -loss 25 path\to\test.pcm path\to\test_nofec_25.pcm
opus_demo voip 48000 1 16000 -loss 30 path\to\test.pcm path\to\test_nofec_30.pcm

opus_demo voip 48000 1 16000 -inbandfec path\to\test.pcm path\to\test_0.pcm
opus_demo voip 48000 1 16000 -inbandfec -loss 5  path\to\test.pcm path\to\test_5.pcm
opus_demo voip 48000 1 16000 -inbandfec -loss 10 path\to\test.pcm path\to\test_10.pcm
opus_demo voip 48000 1 16000 -inbandfec -loss 15 path\to\test.pcm path\to\test_15.pcm
opus_demo voip 48000 1 16000 -inbandfec -loss 20 path\to\test.pcm path\to\test_20.pcm
opus_demo voip 48000 1 16000 -inbandfec -loss 25 path\to\test.pcm path\to\test_25.pcm
opus_demo voip 48000 1 16000 -inbandfec -loss 30 path\to\test.pcm path\to\test_30.pcm

每一行都会生成一个pcm文件(opus_demo指令之后加 -e 和 -d 分别表示只编码和只解码,什么都不加表示编码之后再解码),前7行表示在不使用FEC功能前提下的Opus在各种丢包率下编解码操作后的得到的pcm文件,后7行表示前7行的基础上加入了opus内置的FEC功能,将所有最终得到的pcm原始音频文件在coolEditPro软件中播放,然后比较他们之间的音质差异。

首先比较没加FEC处理的音频在各种丢包率下的音质(当然是丢包率越少越好),然后比较在相同丢包率下,FEC处理过和FEC没有处理过的音频的音质比较,你会发现一个很奇怪的现象,

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值