Я хочу использовать фильтр в версии ffmpeg, скомпилированной для Javascript (ffmpeg.js).Но парсер, похоже, не обрабатывает кавычки, поэтому мне нужно написать полную команду без кавычек.
Как мне написать следующую команду без кавычек?
ffmpeg -i video.mp4 -i image.jpg -filter_complex "[1][0]scale2ref[i][v];[v][i]overlay=10:10:enable=\'between(t,1,2)\'" -c:a copy output.mp4
В javascript Iукажите команду следующим образом:
worker.postMessage({
type: 'command',
arguments: "-i video.mp4 -i image.jpg -filter_complex '[1][0]scale2ref[i][v];[v][i]overlay=10:10' -c:a copy output.mp4".split(' '),
files: [
{
data: new Uint8Array(videofile),
name: 'video.mp4'
},
{
data: new Uint8Array(imagefile),
name: 'image.jpg'
},
]});
Что, однако, приводит к:
[AVFilterGraph @ 0xdf4c30] Нет такого фильтра: '[1] [0] scale2ref [i] [v]; [v] [i] overlay = 10: 10 '
Я проверил, и фильтр наложения работает в более простой версии без кавычек, например, этоКоманда работает:
arguments: "-i video.mp4 -i image.jpg -filter_complex overlay=10:10 -c:a copy output.mp4".split(' '),