zoukankan      html  css  js  c++  java
  • 斯坦福大学的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。

     
  • 相关阅读:
    C语言II作业01
    C语言寒假大作战04
    C语言寒假大作战03
    C语言寒假大作战02
    C语言寒假大作战01
    C语言I博客作业12—学期总结
    第一次作业
    C语言I博客作业02
    C语言I博客作业11
    C语言||作业01
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/2470522.html
Copyright © 2011-2022 走看看