[英]spawned process in node.js exiting immediately
我正在嘗試在node.js中生成avconv進程。 它應該在stdin
上接收數據,並將轉換后的數據輸出到stdout
當命令在外殼中運行時,它立即在node.js中關閉,我不知道為什么:
avconv -v quiet -i pipe:0 -vn -f s16le -acodec pcm_s16le pipe:1
那是可行的,並且在node中:
var a = spawn('avconv', ['-v quiet -i pipe:0 -vn -f s16le -acodec pcm_s16le pipe:1']);
a.on('exit', function(code) {
pr(code, true);
})
我立即得到一個“ 1”退出代碼。 誰能告訴我這是怎么回事?
您需要自己分隔參數數組:
var a = spawn('avconv', ['-v', 'quiet', '-i', 'pipe:0', '-vn', '-f', 's16le', '-acodec', 'pcm_s16le', 'pipe:1']);
Shell會提供您習慣於命令行工作的空格(bash,zsh ...)。 Shell使用空格將您的命令分解為參數,並通過添加引號讓您說“我希望將此作為單個參數”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.