将AAC与ID3标签一起用于AVPlayer

时间:2019-07-02 22:37:26

标签: macos avplayer http-live-streaming

我有一个AAC文件,其中包含从HLS流中捕获的一堆ID3标签。我可以使用AVPlayer播放正常。我想做的是:

1)在播放音频时向用户显示当前的ID3标签

2)获取所有唯一ID3标签的列表,以便播放可以跳转到该位置

我发现无法通过AVPlayer API获取ID3元数据。我可以在AAC文件中搜索所有ID3标签,但这会给我ID3标签的文件字节偏移,而且似乎没有一种方法可以从文件字节偏移转换为时间偏移以进行跳转播放到该位置。

1 个答案:

答案 0 :(得分:1)

aac文件中的每个帧都以包含其采样率的ADTS标头开头。每帧恰好是1024个样本。因此,每个帧的采样率/ 1024秒长,第一帧从零开始。由此,您可以遍历文件,并计算每帧的时间戳。