如何解决在 Node.js 中使用 ffmpeg 将图像放在视频上
我正在 node.js 中创建服务器端视频渲染器。我需要每帧在现有视频文件上添加图像。我需要在渲染的视频中设置每一帧的具体位置。我在 Readable
中保存了图像的所有帧。这是我的代码有效,但没有考虑图像的位置。我该如何修改它?当然,我有一个包含图像坐标的列表 - 但我不知道如何从中制作过滤器。
this.stream
是图像列表。
const filter = ["[1:v]format=argb,setpts=PTS+" + 0 + "/TB[out]",{
filter: "overlay",options: {
enable: "between(t," + 0 + "," + 9 + ")",x: "0",y: "0",},inputs: "[0:v][out]",outputs: "tmp",}
]
const Options = [
"-crf 16","-f mp4","-vcodec libx264","-movflags frag_keyframe+empty_moov","-pix_fmt yuv420p",];
var ffmpeg = require('fluent-ffmpeg');
ffmpeg.setFfmpegPath(ffm.path);
var command = ffmpeg();
const outputStream = fs.createWriteStream(this.Path + "test.mp4");
command.input(this.Path + "input.mp4");
command.input(this.stream).inputFPS(23);
command.outputoptions(Options);
command.fps(23);
command.complexFilter(filter,"tmp");
command.output(outputStream);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。