FFMPEG制作的MP4无法播放/无法打开

MP4 made in FFMPEG cannot play / be opened

我正在尝试通过组合一系列 PNG 图像来制作视频。它似乎工作正常,除了输出的 MP4 实际上无法用 Quicktime 打开/播放。所以基本上是行不通的。我无法弄清楚问题是什么或者如何调试它,因为我没有收到错误或任何东西。下面是我的代码:

var ffmpegPath = require('@ffmpeg-installer/ffmpeg').path;
var ffmpeg = require('fluent-ffmpeg');
ffmpeg.setFfmpegPath(ffmpegPath);
var command = ffmpeg();

command
    .size('2000x2000')
    .input('Aussie1_Export/test_%04d.png')
    .inputFPS(1)
    .output('Aussie_Export_Video/test.mp4')
    .outputFPS(30)
    .noAudio()
    .on('error', (error) => { console.log('error'); })
    .run();

您需要为视频使用编码器,请尝试使用列表设置编码器:

ffmpeg -encoders

当使用典型的 H.264 编码器保存为 MP4 时,ffmpeg 将转换为 YUV 颜色编码,但会选择保真度最高的像素格式,对于 RGB 源,该格式为 YUV 4:4:4。这种格式与大多数播放器不兼容。解决方案是手动强制输出 YUV 4:2:0。在输出文件名前添加 -pix_fmt yuv420p。

.outputOptions('-pix_fmt yuv420p')