Обрезка и склеивание видео с помощью FFmpeg

Популярная библиотека для работы с мультимедиа FFmpeg позволяет не только конвертировать видео из одного формата в другой, но и делать с ним другие операции. Мы уже рассказывали, как повернуть видео с использованием данной библиотеки.

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

Читайте также о других способах обрезки и склеивания видео в статьях:

Подготовка

О том, как скачать и распаковать FFmpeg, читайте в разделах "Скачивание FFmpeg" и "Распаковка FFmpeg" статьи – Обнуление тега ориентации в MP4-видео.

Исполняемый файл-программа FFmpeg и видеофайлы могут находиться где угодно на компьютере, но удобнее всего собрать их вместе в одной папке, тогда в командах FFmpeg можно указывать только имена видеофайлов без указания полных путей.

Обрезка видео

Чтобы обрезать видео, нужно знать время начала и окончания нужного фрагмента. Для этого воспользуйтесь любым видеоплеером, чтобы посмотреть исходное видео, и запишите тайм коды начала и конца желаемого участка в формате ЧЧ:ММ:СС.

Откройте Командную стоку в папке с видеофайлами и исполняемым файлом FFmpeg. Для этого кликните по области навигации Проводника Windows, чтобы появился курсор, наберите "cmd" и нажмите клавишу Enter.

Запуск Командной строки из окна Проводника Windows.

В открывшемся окне Командной строки наберите следующую команду:

ffmpeg -ss 00:00:00 -i source.mp4 -to 00:00:30 -c copy output.mp4

где:

  • -ss 00:00:00 – время начала видео (укажите своё время начала);
  • -i source.mp4 – имя исходного видеофайла;
  • -to 00:00:30 – время окончания видео (укажите своё время окончания);
  • -c copy – параметр, означающий копирование видеопотока с сохранением исходного качества;
  • output.mp4 – имя конечного видеофайла (укажите желаемое имя).

Конечный видеофайл "output.mp4" будет обрезан в соответствии с указанными временными метками.

Необязательно, чтобы видео было в формате MP4, FFmpeg поддерживает много других форматов.

Склеивание видео

Для склеивания фрагментов видео понадобится дополнительный текстовый файл, содержащий имена файлов-фрагментов, которые нужно объединить. Склеивать можно больше двух видео, единственное условие, чтобы оны были одного формата. В таком случае склейка видео будет произведена без конвертирования с сохранением исходного качества. FFmpeg также умеет склеивать видео разных форматов, но это уже тема для отдельной статьи. Перечислите их имена в текстовом файле (имя каждого нового файла с новой строки с обязательным ключевым словом "file" в начале, отделенного пробелом от имени) и сохраните под любым названием (например "concat.txt") в папке вместе с исполняемым файлом FFmpeg и исходными видеофайлами. Образец содержимого текстового файла:

file Video-01.mp4
file Video-02.mp4
file Video-03.mp4

Список файлов для склеивания в FFmpeg.

На этот раз в окне Командной строки наберите следующую команду:

ffmpeg -f concat -i concat.txt -c copy output.mp4

где:

  • -f concat – параметр, указывающий на операцию склеивания видео;
  • -i concat.txt – имя текстового файла, содержащего имена видеофрагментов, которые нужно склеить;
  • -c copy – параметр, означающий копирование видеопотока с сохранением исходного качества;
  • output.mp4 – имя склеенного видео (укажите желаемое имя).

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

Оцените статью: Ужасная!ПлохаяТак себеХорошаяОтличная! 5,00 из 5 (голосов: 2)
Опубликовано в Windows

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

* Представьтесь, пожалуйста! Авторизуйтесь через:

Подписаться на новости