MP3 中的“样本”是啥?
Posted
技术标签:
【中文标题】MP3 中的“样本”是啥?【英文标题】:What is a "sample" in MP3?MP3 中的“样本”是什么? 【发布时间】:2012-06-28 21:34:49 【问题描述】:据说,MP3 帧包含 1152 个样本。那么什么是“样本”呢?左右声道的一对值?还是右声道或左声道的单个值?
【问题讨论】:
【参考方案1】:使用的语言可能会有点混乱。唯一的原因是每帧每个音频通道将有 1152 个(或 384 个,或 576 个,取决于 MPEG 版本和层)。由于压缩,这些数据的实际存储方式比每个通道的单个值更复杂。
如果您想了解更多信息,我会推荐 http://blog.bjrn.se/2008/10/lets-build-mp3-decoder.html,这是一篇不错的详细博客,可以帮助读者加深对 MP3 格式的理解,以便构建解码器。
您还可以查看http://wiki.hydrogenaudio.org/index.php?title=MP3#Polyphase_Filterbank_Formula 以获取更多技术信息。链接锚定到一个部分,该部分特别说明:“音频由每个音频通道 1152 个样本的帧处理”但整个页面描述了 MP3 格式的各个方面。
【讨论】:
后面的意思就是未压缩的立体帧有1152 * 2 * 2字节对吧? 是的。从第一个链接:“当我们正确解码后,一个逻辑帧将为我们产生每个通道正好 1152 个时域样本。在典型的 PCM WAV 文件中,存储这些样本需要每个通道 2304 个字节 i>" 样本和时间有关系吗? "...每个音频通道将有 1152 个..." 1152 个什么?每个通道每帧 1152 个样本? @jayarjo 通常,采样率为 44.1 kHz,这意味着每秒有 44,100 个样本。 MP3 还支持 32 kHz 和 48 kHz (source)。【参考方案2】:MP3 接收 2304 个 16 位 PCM 样本,每个通道有 1152 个,并且本质上对其执行重叠的 MDCT,这样每个通道就可以获得 576 个频域分量。因为是半重叠的,接下来的 MDCT 变换将包括每个通道 756 个新样本和 756 个旧样本,每个通道输出 756 个样本,因此您得到了从时域到频域的 1:1 样本映射。
心理声学模型是执行有损压缩的,我不知道细节。其输出被霍夫曼编码(这是无损压缩)。
每个 MP3 帧包含 2 个 576 个样本的颗粒(对应于 576 个新 PCM 样本和 576 个旧 PCM 样本)。这意味着每个通道有 576 个样本,或总共 1152 个样本。因此,每个帧对应于每个通道 1152 个新的 PCM 样本,所以 2304 samples。每个颗粒包含两个通道的霍夫曼比特,两个通道的比例因子。帧中的边信息由霍夫曼解码器使用。
样本通常指的是一个时间点,因此这将包括左右通道,但您可以将它们分开。
【讨论】:
以上是关于MP3 中的“样本”是啥?的主要内容,如果未能解决你的问题,请参考以下文章