У меня есть несколько видео, которые я хочу объединить в один файл.

Я могу сделать это, следуя инструкциям здесь:https://superuser.com/a/1059261/3189

Тем не менее, это ставит видео «спина к спине». Я хочу вставить промежуток между видео, чтобы каждое видео начиналось с новой секунды (например, 2:00 не 2:01).

У кого-то была такая же проблема с аудио (FFmpeg - Концентрирование аудиофайлов с пробелами), и решением было создать пустой аудиофайл и вставить его между дорожками.

Однако, это не работает для моей проблемы, так как мне нужно, чтобы каждая дорожка начиналась с округленной секунды.

Предложения?

1 ответ1

1

Вам нужен двухэтапный процесс для каждого клипа, плюс некоторая подготовка

Подготовка: Создайте тихое черное видео 1 с, используя /dev /zero в качестве входных данных с точно такими же настройками кодека, что и для клипов.

За видео (при условии, что продолжительность видео составляет 34,56 с):

Написать конкатат файл /path/to/temp.ffconcat

file '/path/to/clip.mp4'
file '/path/to/blacksilence.mp4'

Объединить

ffmpeg -f concat -i /path/to/temp.ffconcat -c copy -to 35 /path/to/fullsecond-clip.mp4

Теперь ваше видео продлено до круглой секунды - повторите это со всеми клипами, и вы можете просто воспроизводить их один за другим.

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