4

ノードでfluent-ffmpegとffmpegを使用しています:

var ffmpeg = require('fluent-ffmpeg');
var src = "http://upload.wikimedia.org/wikipedia/commons/7/79/Big_Buck_Bunny_small.ogv";
ffmpeg(src)
.on('filenames', function(filenames) {
    console.log('Will generate ' + filenames.join(', ') + ' into tempfiles.')
})
.on('end', function() {
    console.log('1 Screenshot successfully taken');

})
.on('error', function(err, stdout, stderr) {
console.log("ffmpeg stdout:\n" + stdout);
console.log("ffmpeg stderr:\n" + stderr);
})
.screenshots({
    filename: randomResult,
    timemarks: [520.929831],
    folder: '/'
});

通常、1 つのサムネイルを撮影するのに 2 ~ 3 秒かかります。リアルタイム開発では 0.5 ~ 1 秒にする必要があります。つまり、ここでの問題は何ですか-コンピューターに単一のpngファイルをダウンロードすると、完了するまでに2〜3秒かかります。なぜffmpegがそれほど遅れているのですか? 何かが正しくないようです。

4

1 に答える 1

2

fluent-ffmpegドキュメントによると、 「入力ストリームでは機能しません。」そのため、ファイル全体がロードされようとしていると思われます。

この投稿で説明されているように、-ss スイッチを使用して、ffmpeg を子プロセスとして直接実行してみることができます。これにより、パフォーマンスが向上するはずです。

于 2016-03-18T17:15:00.263 に答える