首页 > 解决方案 > 转换媒体文件时 ffmpeg 不产生持续时间值。如果在 html 播放器中使用此媒体,则在某些浏览器上搜索失败

问题描述

我问这个问题是因为我没有在网上找到信息,这似乎是不常见的问题。经过大量试验和错误后,我正在创建此答案以供参考。

我正在使用运行 ffmpeg 命令将 MP4 转换为 WEBM 文件的 python。我注意到一些转换在网页中显示时没有寻求,但其他 webm 文件在同一台服务器上工作。我正在从两台不同的机器转换。核心问题是 ffmpeg 命令在一台机器上的转换过程中使用管道并直接输出到另一台机器上的文件。

显然这样做不会填充文件中的持续时间属性,但如果我使用相同的开关、相同的顺序并输出到系统上的文件运行 ffmpeg,则会填充持续时间属性。

我正在使用 opus 将音频从 MP4 转换为 WEBM 格式。此问题可能仅影响某些文件类型,例如 webm,而不影响其他文件类型。

标签: ffmpeg

解决方案


解决方案:

不要管道输出,只需将其作为 ffmpeg 命令的一部分保存到文件中。打开文件并执行您需要执行的操作。

检查持续时间属性是否存在,使用 ffprobe。


推荐阅读