Как в Linux разрезать видео на куски?

Понадобилось сохранить 24 часовую видеозапись с видеорегистратора. Он записал её одним файлом, размер которого получился 40Гб. Естественно, что это неудобно. Да и многие плееры просто не в состоянии нормально воспроизводить такие файлы.

Разрезать файл на куски любой продолжительности в Linux можно всего одной командой:

ffmpeg -i исходник.avi -acodec copy -f segment -segment_time 3600 -vcodec copy -reset_timestamps 1 -map 0 результат%d.avi

Здесь исходник.avi и результат%d.avi — исходное видео, и итоговые фрагменты видео, которые хотим получить. Вместо %d автоматически подставятся порядковые номера фрагментов. Формат не обязательно avi. Подставляйте формат своего исходника.

3600 — это один час в секундах. Поставляйте необходимую вам продолжительность фрагментов.

Разрезка видео происходит без пережатия, следовательно без потери качества и максимально быстро. Затраченное время напрямую зависит от скорости работы вашего диска. Для увеличения скорости имеет смысл исходник читать с одного физического диска, а результат записывать на другой.

3 комментария

Ми
Спасибо большое!
Ни
Благодарю!!!
Вл
Очень помогли. Спасибо. Не силён в видеоредакторах, а тут так просто оказалось впихнуть на флешку с FAT32 большой файл с видео. Ещё раз респект автору.