gpt4 book ai didi

c++ - 如何使用 ffmpeg 提取 Xing/LAME 帧?

转载 作者:行者123 更新时间:2023-11-30 18:05:09 29 4
gpt4 key购买 nike

使用已经使用 ffmpeg 进行音频处理的程序,我想提取并解析 Xing/LAME 风格的 mp3 帧。

(与其他 mp3 元数据不同,xing/lame 元数据存储在流中的虚拟 mp3 文件中)

对我来说不幸的是,av_seek_frame()似乎只支持查找文件中包含实际音频的第一帧。即使我使用字节查找模式将其查找为 0,我最终也会在文件中位于 LAME/Xing 帧之后的位置。如果我只是打开文件并开始读取帧而不进行查找,情况也是如此。

能否说服 ffmpeg 读取我想要的帧?并且,LAME/Xing 数据是否可能跨越多个帧?

最佳答案

无论如何,找到了一个可行的解决方案...使用TagLib,可以直接从文件引用中获取文件指针,并搜索:

{ 0xFF、0xFB、0x90、0x64、0x00、0x00、0x00、0x00、0x00、 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};

查找标签。容易多了。

关于c++ - 如何使用 ffmpeg 提取 Xing/LAME 帧?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6811269/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com