«Я пытаюсь наложить вебм с прозрачным поверх другого видео или изображения, мой результат получился, что вебм поверх, как я хочу, но фон черный».
I 'мы уже пробовали
, что я должен использовать -vcodec libvpx
, но это то, что находится в командной строке.
отсюда Наложение webm с прозрачностью на изображение с FFMpeg
или там https://video.stackexchange.com/questions/14959/merge-two-transparent-webm-videos-with-ffmpeg
Но я не знаю, как использовать его в своем коде.
ffmpeg('video.webm')
.input('public/video/trans.webm')
.complexFilter([
"[0:v]scale=1080:1080[video]",
"[1:v]scale=1080:1080[trans]",
"[video][trans]overlay=0:0:enable='between(t,0,3)'[tmp]",
], 'tmp')
.output('edited.mp4')
.videoCodec('libvpx')
.on('progress', function (progress) {
console.log('Processing ' + progress.percent)
})
.on('error', function (err) {
console.log('An error occurred: ' + err.message);
})
.on('end', function () {
let endtime = new Date();
console.log('Finished !');
console.log("Start : " + starttime + " " + starttime.getSeconds() + " " + starttime.getMilliseconds());
console.log("End : " + endtime + " " + endtime.getSeconds() + " " + endtime.getMilliseconds());
console.log("Used : " + Math.abs(starttime - endtime) + " miliseconds");
})
.run();
фактический результат
Я пыталсяиспользуйте .videoCodec('libvpx')
, затем запустите, но ниже возвращается ошибка.
An error occurred: ffmpeg exited with code 1: Error initializing complex filters. Invalid argument
ожидаемый результат
видеофайл - video.webm в качестве фонового видео - trans.webmontop video.webm
при условии, что в video.webm есть кот, а trans.web - это дом, в котором открыта дверь, что означает, что вы должны видеть кота, когда дверь открыта.