2

Когда я бегу

ffmpeg -f concat -i resizedvideolist.txt -c copy concatenated_time.mp4 2>&1

он объединяет все видео в текстовом формате, но есть примерно одно видео на полпути, которое сбивается. Звук просто не воспроизводится для этого видео, но затем начинается воспроизведение следующего видео, поэтому оно было отложено. Затем где-то аудио удалось догнать и вернуться в синхронизацию. Похоже, здесь происходит какая-то серьезная коррупция.

Я не знаю, как это исправить, так как кодек такой же, как и все другие видео, H.264, это mp4, как и другие. Отдельный видеофайл работает нормально, как есть, и он уже находится в том же масштабе времени, потому что перед этой командой ffmpeg я запустил

ffmpeg -i ./tempDownloadedMemes/$videoFileName -filter_complex 'scale=1080:-1,pad=1080:1080:(ow-iw)/2:(oh-ih)/2:0x2F2F2F' -video_track_timescale 15360 ./resizedVideos/resized_videoFileName 2>&1

Честно говоря, я даже не знаю, что такое временные рамки, но я читал, что для того, чтобы они работали, они должны быть одинаковыми. Я удалил видео из списка, попробовал эту же команду, и проблема исчезла одновременно с видео, которое появилось бы. Кажется, это как-то связано с этим одним файлом. Любые известные проблемы / обходные пути для ошибок concat? Это очень важно для меня. Благодарю.

1 ответ1

1

я нашел действительно хакерский обходной путь, используя другой метод concat.

$resizedVideoList = file('resizedVideoList.txt', FILE_IGNORE_NEW_LINES);
$inputStringForConcat = "";
$concatString = "";
$concateNvalue = 0;
 foreach ($resizedVideoList as $key => $value) {
   //$limiter++;
   //if ($limiter > 2)break;
   $inputStringForConcat .= " -i ".$value;
   $concatString .= "[$key:0][$key:1]";
   $concateNvalue++;
 }
 $concatString .= " concat=n=$concateNvalue:v=1:a=1[v][a]";
  echo ("<pre>");
    print_r($inputStringForConcat);
    print_r($concatString);


 echo shell_exec("./ffmpeg $inputStringForConcat -filter_complex '$concatString' -map '[v]' -map '[a]' concatenated_time.mp4 2>&1");

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .