zoukankan      html  css  js  c++  java
  • AC3 channel coupling

    1.overview

    如果使用channel coupling, encoder端计算所有channel的transform coefficients的平均值,将平均值压缩到coupling channel.每一个coupled channel具有一组唯一的coupling coordinator用来还原出其原始的高频部分的envelop.

     channel coupling只在某个频率以上进行,这个频率称为coupling frequecy,在bitstream中用cplbegf标识。

    2.subband structure

    transform coefficient #37 ~#252被group成18个subband,每个subband中有12个transform coefficients.

    cplbegf是第一个进行coupling的subband的index,即从第几个subband开始进行coupling。小于cplbegf标识的频段,所有的channel是独立编码。

    channel coupling的截止频率用cplendf(最后一个进行coupling的subband)标识。

    coupling band structure使用数组cplbndstrc[sbnd]标识,cplbndstr[]数组中的每一个元素标识该subband是否组合到前面一个coupling band.

    cplbndstr[sbnd]为1,表示当前subband和前一个subband组合到一个coupling band.

    因此coupling band有多个coulping subband组成。

    subband的个数为ncplsubbnd:

    ncplsubnd = 3 + cplendf – cplbegf 

    coupling band的个数为:

    ncplbnd = (ncplsubnd – (cplbndstrc[1] + ... + cplbndstrc[ncplsubnd – 1])) 

    3.coupling coordinate

    每一个coupling coordinate由一个4 bit exponent和一个4bit mantissa组成。

    cplcoexp[ch][bnd]表示coupled channel "ch"的第“bnd”个coupling band的coupling coordinate的exponent.bnd的范围是0~ncplbnds

    cplcomant[ch][bnd]表示coupled channel "ch"的第“bnd”个coupling band的coupling coordinate的mantissa.

    使用的2 bit的mstrcplco(master coupling coordinater)可以增加coupling coordinate 的dynamic range. mstrcplco作用于该ch的所有的coupling coordinates.

    每个coupled channeld (ch)的coupling band(bnd)的 coupling coordinate(cplco)的计算如下:

    通过使用cplbandstrc数组,作用于每个coupling band的coupling coordinate 转化成作用于subband.

    coupling channel的mantissa(cplmant)乘以coupling coordinate还原出coupled channel的mantissa:

  • 相关阅读:
    shell习题第12题:批量创建用户
    shell习题第11题:输入数字执行命令
    二、python数据类型、字符编码、文件处理
    C语言之控制语言:分支和跳转
    c语言之控制语句:循环
    C语言之运算符、表达式和语句
    Python集合及其运算
    Python文本处理
    Python迭代器与格式化
    Python装饰器
  • 原文地址:https://www.cnblogs.com/fellow1988/p/8836842.html
Copyright © 2011-2022 走看看