在一个环境中编码错误,但在其他环境中没有

在一个环境中编码错误,但在其他环境中没有

我对 ffmpeg 还不熟悉,所以抱歉假装知道我在这里所说的内容。

我正在排除故障,本应是一个简单的 ffmpeg 安装,以支持 php 网站包。网站成员可以从手机上传视频进行分享。部分文件的视频转换失败,但并非所有文件都如此。因此,我创建了一套测试视频以转换为 mp4,使用命令行来简化环境并获得 -report 输出。

这是 php 包开发人员推荐的命令:

./ffmpeg -i {输入文件} -vcodec libx264 -acodec aac -strictexperimental -maxrate 2500k -bufsize 5000k -pix_fmt yuv420p -f mp4 -y {输出文件}

四个输入是.mov 文件,4 个是.mp4 文件。

这是我在半数情况下遇到的错误,大多数但不是全部较大的文件(50-100MB 范围):“初始化“输出流 0:0 时出错 - 打开输出流 #0:0 的编码器时出错 - 可能是不正确的参数,例如 bit_rate、速率、宽度或高度转换失败!”

我尝试在另外两个环境中进行重现,我的 Windows 10 桌面和使用与我的网络主机相同的发行版 (Fedora 29) 的虚拟 Linux 机器。但这些环境中的所有文件都转换成功,没有错误。

使用 ffmpeg 4.3.1。但看到的结果与 4.1.1 相同。

故障仅发生在我的共享托管环境中。有人能解释一下可能发生的情况吗?或者更好的是,如何修复它?谢谢

相关内容