现在saveToFile回调参数已被弃用:
FfmpegCommand.prototype.saveToFile = function(targetfile, callback) {
if (callback) {
this.options.logger.warn('saveToFile callback is deprecated, use 'end' and 'error' events instead');
我已经改变了我的代码:
new ffmpeg({ source: source })
.toFormat('ogg')
.saveToFile(path.normalize(targetFile), function(stdout, stderr) {
console.log('stdout', stdout);
console.log('stderr', stderr);
});
:
new ffmpeg({ source: source })
.toFormat('ogg')
.on('end', function() {
console.log('file has been converted succesfully');
})
.on('error', function(err) {
console.log('an error happened: ' + err.message);
})
.saveToFile(path.normalize(targetFile));
但我不知道如何获得旧代码给我作为参数(stderr)的stderr。我知道我可以从on 'error'事件中获得错误消息,但是我想获得stderr以获得有关错误的更深入的信息。
您只需将带有stdout和stderr的函数作为参数移动到.on('error')事件,如下所示:
.on('error', function(err, stdout, stderr) {
console.log(err.message); //this will likely return "code=1" not really useful
console.log("stdout:n" + stdout);
console.log("stderr:n" + stderr); //this will contain more detailed debugging info
})