繁体   English   中英

Node.js中的ffmpeg命令

[英]Ffmpeg command in nodejs

我想在我的nodejs应用程序中使用ffmpeg命令。 我不想使用任何类似fluent-ffmpeg的npm软件包。 到目前为止,我已经做到了:

var ffmpeg = spawn('ffmpeg', ['-i',fileName+'.wav' ,fileName+'.amr','-acodec libopencore_amrnb', '-ab 12200k', '-ac 1', '-ar 8000']);
            // input_file.pipe(ffmpeg.stdin);
            // ffmpeg.stdout.pipe(output_stream);

            ffmpeg.stderr.on('data', function (data) {
                console.log(data.toString());
            });

            ffmpeg.stderr.on('end', function () {
                console.log('file has been converted succesfully');
            });

            ffmpeg.stderr.on('exit', function () {
                console.log('child process exited');
            });

            ffmpeg.stderr.on('close', function() {
                console.log('...closing time! bye');
            });

在输出中,它给出这样的错误:

Unrecognized option 'acodec libopencore_amrnb'

我已经安装了所有需要的二进制文件。 只需要知道我必须在spawn()传递什么命令即可:

var ffmpeg = spawn('ffmpeg', ['-i',fileName+'.wav' ,fileName+'.amr','-acodec libopencore_amrnb', '-ab 12200k', '-ac 1', '-ar 8000']);

我已经在终端上尝试了该命令,并且运行良好。 我想要的只是在spawn()传递命令(选项)的正确方法。 任何帮助,将不胜感激。

调用spawn ,先传递命令,然后传递一个数组,其中每个标志和每个关联的参数都是一个单独的元素。

因此,您需要'-acodec', 'libopencore_amrnb'不是'-acodec libopencore_amrnb' ,而是您想要的'-acodec', 'libopencore_amrnb' 它们需要是两个单独的元素。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM