[数据压缩]实验六 MPEG编码

本文详细介绍了MPEG编码的实验框架,重点关注感知音频编码设计思想,包括临界频带、掩蔽值、心理声学模型及LayerⅠ、LayerⅡ编码。通过实验,掌握了MPEG编码器相关原理,并进行了音频输出的分析。
摘要由CSDN通过智能技术生成

目录

一、实验框架

二、感知音频编码设计思想

临界频带

掩蔽值

基本思想

整体框架

心理声学模型(Psychoacoustic Model)

LayerⅠ编码

Layer Ⅱ编码

装帧​编辑

三、实验记录


一、实验框架

  • 掌握MPEG编码器相关原理
  • 了解LayerⅠ和LayerⅡ相关编码
  • 完成输出音频的相关实验分析

二、感知音频编码设计思想

临界频带

  • 临界频带是指当某个纯音被以它为中心频率,且具有一定带宽的连续噪声所掩蔽时,如果该纯音刚好被听到时的功率等于这一频带内的噪声功率,这个带宽为临界频带宽度

  • 通常认为从20Hz到16kHz有25个临界频带,单位为bark,1bark=一个临界频带的宽度

掩蔽值

  • 掩蔽音与被掩蔽音的组合方式有四种,即它们分别可以是乐音信号或窄带噪声。
  • 音乐与语音信号大都由一系列复杂的频谱分量构成,相应的这些多个掩蔽分量也会相互影响并最终获得一个整体的掩蔽阈值。
  • 多个掩蔽音同时存在时的综合掩蔽效果可以理解为每个掩蔽音的掩蔽效果先独立变化然后再线性相加
    • 当两个信号重叠并落在一个临界频带中时,二者的掩蔽分量可以线性相加
    • 对于复杂音频信号,可以将其频谱分割成一系列离散段,每段就是一个掩蔽信号,各掩蔽音互不重叠,即以一个临界带为单位。各掩蔽音的声压级则通过将对应的临界频带上的短时功率谱密度线性相加得到。
  • 将输入信号变换到频域,再将结果分解成一些尽量与临界频带尽可能相似的子带,然后对每个子带进行量化,量化方式应当使得量化噪声听不见

基本思想

分析信号,去掉不能被感知的部分。
通过子带分析滤波器组使信号具有高的时间分辨率,确保在短暂冲击信号情况下,编码的声音信号具有足够高的质量。
又可以使信号通过FFT运算具有高的频率分辨率,因为掩蔽阈值是从功率谱密度推出来的。

整体框架

输入声音信号经过一个多相滤波器组,变换到多个子带。同时经过心理声学模型计算以频率为自变量的噪声掩蔽阈值。量化和编码部分用信掩比SMR决定分配给自带信号的量化位数,使量化噪声<掩蔽阈值。最后通过数据帧包装将量化的子带样本和其它数据按照规定的帧格式组装成比特数据流。

心理声学模型(Psychoacoustic Model)

通过子带分析滤波器组使信号具有高的时间分辨率,确保在短暂冲击信号情况下,编码的声音信号具有足够高的质量。又可以使信号通过FFT运算具有高的频率分辨率,因为掩蔽阈值是从功率谱密度推出来的。在低频子带中,为了保护音调和共振峰的结构,就要求用较小的量化阶、较多的量化级数,即分配较多的位数来表示样本值。而话音中的摩擦音和类似噪声的声音,通常出现在高频子带中,对它分配较少的位数。而如何实现这一分配方式,就需要参考心理声学模型和比特预算。

MPEG-1标准定义了两个模型:

  • 心理声学模型1:
    • 计算复杂度低
    • 对于假设用户听不到的部分压缩太严重
  • 心理声学模型2:
    • 提供了适合Layer III编码的更多特征

但实际实现的模型复杂度取决所需要的压缩因子。如大的压缩因子不重要,则可以完全不用心理声学模型。此时位分配算法不使用SMR(Signal Mask Ratio),而是使用SNR。

心理声学模型Ⅰ

  1. 将样本变换到频域
    32个等分的子带信号不能精确地反映人耳的听觉特性,所以我们引入FFT补偿频率分辨率不足的问题。

    • 采用Hann加权和DFT
      • Hann加权减少频率中的边界效应。
      • 此变换不同于多相滤波器组,因为模型需要更精细的频率分辨率,而且计算掩蔽阈值也需要每个频率的幅值。
    • 模型1:采用512(Layer Ⅰ)或者1024(Layer Ⅱ and Ⅲ)样本窗口:
      • Layer Ⅰ:每帧384个样本点,512个样本点足够覆盖。
      • Layer Ⅱ and Ⅲ:每帧1152个样本点,每帧两次计算,模型1选择两个信号掩蔽比(SMR)中较小的一个。
  2. 确定声压级别
    子带n nn中的声压级别L s b L_{sb}Lsb​计算如下:
    L s b ( n ) = M A X [ X ( k ) , 20 × l o g 10 ( s c f m a x ( n ) × 32768 ) − 10 ] d B L_{sb}(n) = MAX[X(k),20\times log_{10}(scf_{max}(n)\times32768)-10]dBLsb​(n)=MAX[X(k),20×log10​(scfmax​(n)×32768)−10]dB
    其中X ( k ) X(k)X(k)是在子带n nn中的频谱线的声压级别,s c f m a x ( n ) scf_{max}(n)scfmax​(n)是在一帧中子带n nn的三个缩放因子最大的一个。

  3. 考虑安静时阈值,也即绝对阈值
    也即绝对阈值。在标准中有根据输入PCM信号的采样率编制的“频率、临界频带率和绝对阈值”表。此表为多位科学家经多次心理声学实验所得。

  4. 将音频信号分解成“乐音(Polyphase Filter Bank)tones)” 和“非乐音/噪声”部分​​​​​​​

     噪音掩蔽乐音和乐音掩蔽噪音的模型。

    模型1:根据音频频谱的局部功率最大值确定乐音成分。局部峰值为乐音,然后将本临界频带内的剩余频谱合在一起,组成一个代 表噪声频率(无调成份)。
    要列出谱线X ( k ) X(k)X(k)的有调和无调,需执行下面的三个步骤:

    • 标明局部最大;如果X ( k ) X(k)X(k)比相邻的两个谱线都大,则X ( k ) X(k)X(k)为局部最大值。
    • 列出有调成分,计算声压值。如果X ( k ) − X ( k + j ) ≥ 7 d B X(k)-X(k+j) \ge 7dBX(k)−X(k+j)≥7dB,则X ( k ) X(k)X(k)为有调成分。j随谱线的位置不同而不同。
    • 列出无调成分,计算功率。在每个临界频带内将所有余留谱线的功率加起来形成临界频带内无调成分的声压级。并列出以下参数:最接近临界频带几何平均值的谱线标记k,声压级以及无调指示。
  5. 音调和非音调掩蔽成分的消除
    利用标准中给出的绝对阈值消除被掩蔽成分;考虑在每个临界频带内,小于0.5Bark的距离中只保留最高功率的成分。

  6. 单个掩蔽阈值的计算
    音调成分和非音调成分单个掩蔽阈值根据标准中给出的算法求得。

  7. 全局掩蔽阈值的计算

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值