好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

斯坦福大学的Gss Audio Codec 调试分析

斯坦福大学的Gss Audio Codec 调试分析

这是在斯坦福大学的Greg Sell 和 Scott Cannon 在2005年冬天做的一个简单的音频编码器。

性能经分析和MPEG1 层1层2差不多。码率基本控制在256~384kbps

给出源代码和文章链接

Gss Project Paper在线链接

Gss Project Paper本地链接

代码在线链接

本地链接

测试流在线链接

测试流本地连接

但是这个工程有些问题

注意:

1.decoder 在decoder.c加一行代码


n = fread(&long_block , 1, sizeof(short), enc_fp);
n = fread(&output_fp.info.srate , 1, sizeof(short), enc_fp);
n = fread(&output_fp.info.channels , 1, sizeof(char), enc_fp);
n = fread(&output_fp.info.bits_per_sample , 1, sizeof(char), enc_fp);
n = fread(&output_fp.info.frames , 1, sizeof(long), enc_fp);
n = fread(&output_fp.info.sfformat , 1, sizeof(long), enc_fp);
BLOCKSIZE = long_block;//添加的代码

 

2.编码和解码的的fopen要从r/w改为rb+/wb+

这是一个平台问题,在linux系统中r/ w没问题

在windows系统中会造成读取中断。

下面简单分析部分问题分析

他有4个心里声学位分配方法

#define BA_TYPE  

BA_TYPE 为1或是2的时候,问题比较多,频带泄漏很严重

Type1 的光谱图

Type2 : 30秒 , 260.24kbps

Type 3: 302.16kbps

Type 4:261.31kbps

总结:其中type1,2,4是计算出来的。

3是强制分配出固定BA系数的

可见,他的BA分配模块还是有问题,有大量的交叠噪声和频带泄漏。

频带泄漏是因为该帧和频带的BA分配了0bit

交叠噪声是相邻频带的地方BA分配过多bit。

 

标签:  audio coding ,  音频编码 ,  Audio Codec

作者: Leo_wl

    

出处: http://www.cnblogs.com/Leo_wl/

    

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

版权信息

查看更多关于斯坦福大学的Gss Audio Codec 调试分析的详细内容...

  阅读:47次