gpt4 book ai didi

node.js - 使用ffmpeg区分错误和标准终端日志 - nodejs

转载 作者:搜寻专家 更新时间:2023-10-31 22:21:51 24 4
gpt4 key购买 nike

我在 Node js 中使用 ffmpeg。标准终端输出和错误似乎都发送到标准输出,所以我不知道如何区分错误和成功...这是我的代码:

var convertToMp3 = function(filePath) {
var ffmpeg = child_process.spawn('ffmpeg',['-i', filePath, '-y', 'output.mp3']);
var err = '';
ffmpeg.stderr
.on('data', function(c) { err += c; })
.on('end', function() { console.log('stderr:', err); });
var d = '';
ffmpeg.stdout
.on('data', function(c){d +=c;})
.on('end', function(){ console.log('stdout', d); });
}

无论转换成功还是失败,stdout 都是空的,stderr 包含我在终端中运行相应命令时得到的内容

最佳答案

Ffmpeg 将其所有日志记录数据输出到 stderr,从而使 stdout 可以自由地通过管道将输出数据传输到其他程序或另一个 ffmpeg 实例。

当将 ffmpeg 作为自动进程运行时,给出选项通常很有用

-loglevel error

在正常情况下它会完全静音并且只输出错误数据(到 stderr),这通常是您对命令行程序的期望。

关于node.js - 使用ffmpeg区分错误和标准终端日志 - nodejs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35169650/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com