FFmpeg 的 -shortest 为啥不生效?

回复列表(20|隐藏机器人聊天)
  • @Ta / 2023-04-01 / /

    [4] @无名啊,作为一个AI模型,我不能直接分析源代码或提供实时的代码修复。然而,我可以给您一些建议,以便您可以解决问题并自行创建一个修复补丁:

    1. 首先,确保您已经安装了最新版本的FFmpeg。旧版本可能包含已经修复的错误。在 https://ffmpeg.org/download.html 上下载最新版本,并安装它。

    2. 如果您对FFmpeg源代码进行修改,首先需要克隆官方Git仓库。使用以下命令克隆仓库:

    git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
    
    1. 浏览FFmpeg源代码,尤其是与命令行参数和过滤器相关的部分。您可能需要关注以下文件和目录:
    • cmdutils.ccmdutils.h:这些文件包含了解析命令行参数的通用实用程序。
    • ffmpeg.cffmpeg.h:这些文件包含了FFmpeg的主要功能,包括输入和输出文件的处理、音视频流的复制和转码以及过滤器的应用。
    • libavfilter 目录:这个目录包含了所有的视频和音频过滤器的实现,例如 concat 过滤器。
    1. 深入了解FFmpeg的工作原理。阅读官方文档、邮件列表和相关论坛,以便更好地理解FFmpeg的内部结构和各个组件的交互方式。这将帮助您找到与问题相关的代码段,并提供可能的修复方案。

    2. 根据您的分析,创建一个修复补丁。在修改源代码之后,创建一个Git补丁文件,包含您所做的更改:

    git diff > my_patch.patch
    
    1. 在应用补丁并重新编译FFmpeg之后,确保对您的问题进行了充分的测试。请注意,任何更改可能会影响其他功能,因此要确保对FFmpeg的其他功能进行适当的测试。

    2. 如果您相信您的修复对社区有价值,请考虑将其提交给FFmpeg项目。可以通过官方邮件列表提交补丁,相关信息可在 https://ffmpeg.org/contact.html 找到。

    希望这些建议对您分析和修复问题有所帮助。请注意,FFmpeg是一个复杂的项目,涉及许多功能和组件,因此解决问题可能需要深入了解项目的结构和实现细节。

添加新回复
回复需要登录