ffmpeg не удалось найти подходящий выходной формат - PullRequest
0 голосов
/ 16 октября 2018

Я использую JavaScript для создания видеофайла из нескольких видеофайлов.У меня есть массив, в котором я сохраняю исходный видеофайл, а затем использую следующую команду и пытаюсь сгенерировать одно видео:

ffmpeg -c:v libvpx -i sourceVideos/a1.mkv -c:v libvpx -i sourceVideos/a2.mkv -c:v libvpx -i sourceVideos/a3.mkv  -filter_complex "[1]setpts=PTS+5.00/TB[a2];[2]setpts=PTS+10.00/TB[a3];[0][a2]overlay[o2];[o2][a3]overlay" with4.mp4

Когда я запускаю команду в моей консоли, она работает отлично, но яиспользуя execFileSync для создания видео из javascript-программы,

let myString2 = '"' + string2;

let myString3 = string3 + '"';

let argsString = myString2 + myString3;
let myArgs = argsString.toString();

const createMasterStreams = execFileSync('ffmpeg', [string1, '-filter_complex', myArgs, masterOutFile]);

Содержимое строк1, строк2 и строк3 выглядит так:

string1: -c:v libvpx -i sourceVideos/a1.mkv -c:v libvpx -i sourceVideos/a2.mkv -c:v libvpx -i sourceVideos/a3.mkv
string2: [1]setpts=PTS+5.00/TB[a2];[2]setpts=PTS+10.00/TB[a3];
string3: [0][a2]overlay[o2];[o2][a3]overlay

при запуске программы я получаю следующую ошибку:

[NULL @ 0000026d8d77ad80] Unable to find a suitable output format for '"[1]setpts=PTS+5.00/TB[a2];[2]setpts=PTS+10.00/TB[a3];[0][a2]overlay[o2];[o2][a3]overlay"'
"[1]setpts=PTS+5.00/TB[a2];[2]setpts=PTS+10.00/TB[a3];[0][a2]overlay[o2];[o2][a3]overlay": Invalid argument
child_process.js:624

что я делаю не так ???

Следующая ошибка показывает, что двойные кавычки вокруг аргументов отсутствуют:

Error: Command failed: ffmpeg -c:v libvpx -i sourceVideos/a1.mkv -c:v libvpx -i sourceVideos/a2.mkv -c:v libvpx -i sourceVideos/a3.mkv  -filter_complex [1]setpts=PTS+5.00/TB[a2];[2]setpts=PTS+10.00/TB[a3];[0][a2]overlay[o2];[o2][a3]overlay with4.mp4

там должно бытьдвойные кавычки после -filter_complex и должны заканчиваться перед выходным файлом.Я также пытался использовать литералы шаблона, но это не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...