【发布时间】:2021-04-19 01:05:07
【问题描述】:
我需要获取一个输入流的音频和另一个流的视频,并将它们与 fluent-ffmpeg 结合起来。我正在使用nodejs。另外,我需要管道输出。两个输入都有视频和音频,但我只需要合并一个流的音频,同时对另一个流上的视频做同样的事情。
谢谢。
【问题讨论】:
标签: node.js ffmpeg stream pipe fluent-ffmpeg
我需要获取一个输入流的音频和另一个流的视频,并将它们与 fluent-ffmpeg 结合起来。我正在使用nodejs。另外,我需要管道输出。两个输入都有视频和音频,但我只需要合并一个流的音频,同时对另一个流上的视频做同样的事情。
谢谢。
【问题讨论】:
标签: node.js ffmpeg stream pipe fluent-ffmpeg
你不需要使用fluent-ffmpeg,如果你的机器上安装了ffmpeg,你可以使用child-process。
const {exec} = require("child_process");
const command = "ffmpeg -i video.mp4 -i audio.wav -c:v copy -c:a aac output.mp4"
我从how to combine audio and video using ffmpeg得到这个命令
exec(command, (error, stdout, stderr) => {
if (error) {
console.error(`exec error: ${error}`);
return;
}
console.log(`stdout: ${stdout}`);
console.error(`stderr: ${stderr}`);
})
;
【讨论】:
-i pipe:4 这样的事情吗?我会再试一次,但现在我正在上课,所以我稍后会回复你
dest.on is not a function 这是代码的链接和错误:pastebin.com/zMXDbeF7 错误:pastebin.com/pFiYTC42
no suitable format found for pipe:1,所以我在命令中添加了-f mp4,得到了muxer does not support non-seekable output,所以我做了一些研究,发现我需要添加-movflags frag_keyframe+empty_moov,它起作用了!太感谢了!你有这个五年级学生的尊重!