我试图解决这个问题:Apple在谈论音频文件中的“数据包”,并且有一个名为AudioFileReadPackets的精美函数,它需要很多参数。其中一个指定“起始数据包”,另一个指定您要读取的数据包数量。
因此,我想象一个音频文件在内部看起来像这样:它由很多数据包组成。如果它是具有可变比特率格式的音频文件,则每个数据包的大小可能不同。如果文件具有恒定的比特率格式,则每个数据包的大小均相同。因此,音频文件就像是装满箱子的卡车,每个箱子都包含一些有趣的东西。
那是对的吗?它适用于任何文件吗?这是文件的实际外观吗?
最佳答案
这个问题(甚至带有“特别是音频文件”的资格)也太过广泛了;不同的文件格式也不同!
因此,要回答这个问题,您首先必须指定一种特定的文件类型。那么问题的答案将始终是看其规范。专有格式可能没有公开可用的规范。
精美的Wotsit's Format网站上提供了许多文件(官方和反向工程)的规范。
Apple iTunes等使用的AAC由ISO/IEC 13818-7:2006定义。该文件将花费您252瑞士法郎(约233美元)!您必须真正有兴趣(商业上)付款而不是使用现有的AAC编解码器。
“数据包”是数据传输中常用的术语,因此可能比音频文件更适用于音频流,在音频文件中,“帧”可能更合适;对于数据文件,通常将其称为“记录”,但是该术语具有灵活性因为它意味着任何撰写它的人以为的意思!如果足够多的人误用了一个术语,则该术语本质上会重新定义(或乘以定义)来表示该术语,因此我不会对此太挂了。作者确实怀疑使用它来定义一个文件中具有定义格式的单位,该文件中有多个依次重复的此类单位。