silk encoder
来源:互联网 发布:手机淘宝认证在哪里 编辑:程序博客网 时间:2024/05/18 20:48
Skype SILK codec overview 收藏
最近简单看了一下Skype SILK codec 算法, 基本原理和流程大体明白了, 以后有时间再仔细研究一下细节,今天就简单说说. SILK Codec是一个语音和音频编解码算法, 对于音频带宽、网络带宽和算法复杂度都具有很好的弹性。支持4种采样率:8KHz、12KHz、16KHz、24KHz;三种复杂度:低、中、高。编码码率在 6~40kbps(不同采样率具有不同的码率范围)以及还支持VAD、DTX、FEC等模块,感觉还是比较全面。最重要的一点是提供了定点C代码,非常有利于向ARM、DSP移植和优化。
顺便附上原理流程图
看过SILK Codec 代码,总觉得他是iLBC和Speex混合拼出来的,当然没有这么简单,整体采用Source-filter经典模型,即对语音产生系统建模为基础,经过两级滤波,第一级长时预测滤波器(LTP),去除浊音语音中的周期成分,当然对于清音就不需要这一步了;第二步进行短时滤波(LPC),去除近样点之间的冗余信息,这里采用伯格(Burg)算法计算得到LPC系数(一般CELP Codec都采用自相关算法计算LPC),然后采用多级矢量量化的方法(一般CELP Codec都采用分裂式矢量量化方法);经过这两级滤波就可以得到激励信号,一般CELP Codec往往采用固定码书+自适应码书分别量化的方法,它们分别近似激励信号中的近周期成分和类噪声成分(这个模型简直太经典了,所以CELP可以在8Kbps以上保持非常好的音质,在进一步对固定码书的不同量化方法又引出了不同Celp的命名和变体,不能再说了否则就成介绍CELP了),这里SILK也不同于iLBC,但是却很相似也是在子帧中找到能量最大的点,然后进行增益量化和归一化,对归一化后的信号采用距离编码(Range encode),这个距离编码是无损压缩算法,性能和原理类似算术编码,用它主要是出于避开专利的原因。另外,对于VAD、DTX、FEC以及对于噪声的抑制也很不错,变码率的编码方式与Speex比较相似。
好了,今天先到这里,明天还要上班呢,以后再对细节仔细研究。
- silk encoder
- silk
- encoder
- Encoder
- Silk Mobile
- Silk Road Tour
- Skype SILK codec overview
- Silk的自有文件类型
- silk整体描述
- a question about SILK:
- silk dither 白噪声?
- SiLK Documentation 翻译
- Skype SILK codec overview
- Skype SILK codec overview
- freeswitch添加silk编码
- SILK : SILK_RTP_PayloadFormat 中文翻译
- Skype SILK codec overview
- Silk安装程序
- 各种光照的算法原理 菲涅尔法则
- SSH 用到各包作用
- Win32结构化异常处理(SEH)——终止处理程序(__try/__finally)
- Ext.MessageBox.confirm
- Android 打包签名 从生成keystore到完成签名
- silk encoder
- SSH 用到各包作用
- Log4j使用总结
- 学习笔记:InnoDB的master thread
- Android中的长度单位详解(dp、sp、px、in、pt、mm)
- 捕捉线程的异常
- Linux SHELL中的变量详述
- ascii码值
- iphone官方例子的地址汇总