在MP3文件中查找main_data_begin

时间:2015-02-26 15:53:14

标签: matlab mp3 decoder

我想解码一个MP3文件。我设法在标题中找到32位(同步字,ID,层,比特率等)。问题是我不知道如何找到main_data_begin(边信息)的起始位置。我在这种情况下使用MATLAB。

我知道这可能是一个简单的问题,但我真的需要你的帮助。请。 谢谢。

1 个答案:

答案 0 :(得分:0)

MPEG1 / 2 Layer III使用main_data_begin作为粒子标题上的一种伪VBR&数据。最简单的方法是实现一个循环缓冲区,它接收辅助信息之后的所有物理帧数据,并在开始帧解码之前抛弃缓冲区开头的未使用字节(如main_data_begin所示)。

您最好的选择是阅读现有解码器的来源。规范对此也非常有用,但main_data_begin在公开版本中被错误记录(尽我所能找到)。