linphone的语音优化记录

花了整整三个星期,一直在优化linphone的语言质量,终于有改进,还是比较兴奋的。

现在把整个过程简单描述一下:

1,先找到跟语音相关的参数,其实有很多归纳一下无非就是 回声消除参数、回声抑制参数、噪声处理参数、均衡器参数4个。

2,要了解参数的用途。花费了一周时间还是值得的。

agc=0 #这个是自动增益,试过=1会啸叫

###回声消除的参数如下###

echocancellation=1 #回声消除这个必须=1,否则会听到自己说话的声音

ec_tail_len= 100 #尾长表示回声时长,越长需要cpu处理能力越强

ec_delay=0 #延时表示回声从话筒到扬声器时间 默认不写

ec_framesize=128 #采样数,肯定是刚好一个采样周期最好 默认不写

####回声抑制####  

echolimiter=0 #这个不开会有空洞的声音,建议不开

el_type=mic  #这个选full 和 mic 表示抑制哪个设备

eq_location=hp #这个表示均衡器用在哪个设备

speaker_agc_enabled=0 #这个表示是否启用扬声器增益

el_thres=0.001 #系统响应的阈值 意思在哪个阈值以上系统有响应处理

el_force=600 #控制收音范围 值越大收音越广 意思能否收到很远的背景音

el_sustain=50 #控制发声到沉默时间 用于控制声音是否拉长 意思说完一个字是否被拉长丢包时希望拉长避免断断续续

####降噪声####

noisegate=1 #这个表示开启降噪音,不开会又背景音

ng_thres=0.03 #这个表示声音这个阈值以上都可以通过,用于判断哪些是噪音

ng_floorgain=0.03 #这个表示低于阈值的声音进行增益,用于补偿声音太小被吃掉


####均衡器#### 这里就不详细描述这个更高级

eq_active=0

mic_eq_active=0

mic_eq_gains=300:0.1:100 700:0.2:250

spk_eq_active=0

spk_eq_gains=300:0.1:100 700:0.2:250

3,解决网络抖动延时丢包

[rtp]

audio_jitt_comp=160 #这个参数用于抖动处理,值越大处理抖动越好,但声音延时较大 理论值是80根据实际调整160

nortp_timeout=20 #这个参数用于丢包处理,值越小丢包越快声音不会断很长时间,同时要跟el_sustain配合声音才好听

4,就是要一个一个参数的调试,然后放个手机播放音乐,看看音乐的声音是否失真,是否流畅。还又时不时喊”喂“,听听是否又回声。

都OK了,表示声音已经调优啦!!!

你可能感兴趣的:(linphone的语音优化记录)