1

Допустим, foo.mp4 - это запись потоковых сокращений длиной 3х49м06 с, и я хочу разделить ее на 8 секций, около 28 м40 каждая, чтобы загрузить их на разумные части на YouTube.

Я знаю, что мог бы разделить это время на 8, а затем запустить mencoder или ffmpeg 8 раз с указанными параметрами start и endpos, но это по-прежнему оставляет такие проблемы, как ключевые кадры, не перекодирование, и оставляет небольшое перекрытие между видео без адреса.

Так каков "правильный" способ сделать это?

2 ответа2

1

Лучшее, что я смог найти:

ffmpeg -i stream.mp4 -c copy -map 0 -segment_time $[60*28] -reset_timestamps 1 -f segment "stream_part_%02d.mp4"

Это разбивает ключевые кадры на одинаково длинные сегменты без перекодирования.

Основным недостатком является то, что вам нужно рассчитать размер сегмента вручную (если вы разделите видео 3h1m на сегменты 30m, у вас будет неудобный 7-й сегмент 1m). В этом примере я использовал 28-миллиметровые сегменты, так как это было ближе к четному.

Недостатком является то, что число создаваемых файлов начинается с 0.

0

Я успешно использую сторонний инструмент для конвертации видео под названием Pavtube Video Converter Ultimate, чтобы разделить мой двухчасовой фильм на 5 частей одинаковой длины.

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