0

我想要一个 0.0 秒的视频缩略图。目前我正在使用 node-fluent-ffmpeg 来生成缩略图。以下是代码:

ffmpeg(tempLocalFile)
          .screenshots({
            timestamps: [0.0],
            filename: 'xx.png',
            folder: tempFilePath
          }).on('end', function() {
            console.log('done');
          });

但问题是,这个过程花费了太多时间。生成缩略图通常需要 30 秒。如果 mp4 文件大小增加,它会不断增加。

所以我的问题是,有没有快速生成缩略图的方法。我们可以改进上面的代码来提高性能吗?

ps:这段代码运行的机器是512MB RAM 800MHz

4

1 回答 1

1

有一个技巧可以让 ffmpeg 只解码一个帧。您只需-ss在输入之前定义标志。这将迫使它只解码指定的帧,而不是整个视频。

ffmpeg -ss 0 -i input.mp4 -vframes 1 output.jpg

我不确定如何在 fluent-ffmpeg 中做到这一点,或者是否有可能。你可以提出问题

于 2017-08-28T22:51:53.400 回答