• 关于AAC量化器的设计以及对量化器设计的思考


    我一直对AAC的量化器公式颇敢兴趣,想知道这样复杂的的函数量化器设计方法。也看了很多论文,试图从中找到原理。

    MAGIC_NUM被定义为0.4054

    这是AAC的量化器公式

    我们既然是工程导向的逆向学习,那就先提出问题:

    1.为什么是2的指数

    答:2的指数可以理解为是为了2进制表示方便,也可能是计算得到。如果是计算得到,如何计算得到。而不是3.

    2.为什么是1/4相乘

    答:可以肯定的说,原因之一是甚至可能唯一是乘以1/4是为了降低量化步长。当然也可能是计算得到。如果是计算得到,如何计算得到。

    3.为什么设计一个common_scalefac

    答:这是一个小技巧,scalefactor是每个scalefactor band的因子,他们之间也有相关性,比如,可能是3,4,6,3,8,9,12. 他们的最小值是3. 而得到common_scalefac的值是3,scalefactor变为,0,1,3,5,6,9,进一步压缩幅值(注意这里不分正负)。提高对scalefactor的压缩效率。

    这里引入的技巧是提取差值公因子

    4.为什么设计出指数的指数(3/4)

    答:这必然是一个计算值,为什么。如何算。下面介绍。

    5.魔术因子MAGIC_NUM如何得到

    答:这必然是一个计算值,为什么。如何算。下面介绍。

    引申,A率和U率的公式如何设计得到。

    找了这么就,其实答案就在身边,这就是逆向学习的弯路。。。。。。。

    十一回公司的飞机上,重新翻阅戴善荣的《数据压缩》,发现方法其实就在枕边,之前没有系统扎实的学习啊。在第一章量化原理就有讲。虽然不完整,但是以A率和u率为例讲了设计方法,也包括Lloyd-Max经典方法等。

    这里不赘述,仅提一下思路。

    里面从线性量化引入失真计算,失真与线性量化的关系,再引出压扩量化也就是A率和u率。讲了A率和u率的设计方法,讲了如何设计最佳的压扩量化器。当然

    你从设计方法上很容易想到其他的指数量化器的设计方法。

    书里讲到了,从已知概率密度函数PDF推导计算压扩量化器的方法。

    就变成如和通过已知随机数据(如MDCT变换后数据)计算PDF的方法。也就是信号的概率分布特征问题。

    这里一般音频信号和语音信号用伽玛分布,Laplacian 分布,高斯分布的来模拟,也可以自己再调整参数。设计合理的压扩量化器。

    这里调整参数包括,分布函数的参数调整,那就先假设一个先验分布和变量参数,根据方差或是衡量公式去逼近,得到比较好的参数。

    说白了,就是先假设一个公式(当然这个公式不是随便设的,是根据经验的到的。比如,为什么是以上3个分布近似而不用其他分布近似)。这个先验-》参数计算是基本物理公司推导原理了。牛顿经典也是这样总结的。

    说回来。这样就完成了压扩量化器的设计。

    当然,至于tns参数的反正切量化器,那另当别论。可以想象也是分布-》先验公式-》公式收敛参数。

    补差,该书16页对公式1.2-37解释p(*)时,说p(*)是分布密度,这个说法不准确。一般讲是分布函数,密度函数,至少我从百度,和google中英文翻译中没搜到分布密度的定义。最后经过分析,这里是PDF,概率密度函数。结合wikipedia对laplacian 分布的解释

    http://en.wikipedia.org/wiki/Laplacian_distribution

    p的公式(1.2-19的公式)是在b(wiki中的laplacian 分布的pdf中参数)为a/(2^0.5),u = 0时的分布函数。

    注意我之前的博客引入的量化论文,和改书籍第一章结尾引入的论文

    Principles of Quantizaiton.

    好:量化问题转化为分布的逼近和概率密度函数的技算上了。。。。。。

  • 相关阅读:
    编译linux内核问题
    linux驱动路径
    plateform_driver_register和plateform_device_register区别
    linux总线、设备和设备驱动的关系
    linux设备驱动模型
    一堆Offer怎么选?这样做就不纠结了
    解决问题最简单的方法
    Android ScrollView嵌套GridView导致GridView只显示一行item
    84. Spring Boot集成MongoDB【从零开始学Spring Boot】
    接手别人的代码,死的心有吗?
  • 原文地址:https://www.cnblogs.com/gaozehua/p/2715656.html
Copyright © 2020-2023  润新知