FFmpeg | Обрезка по времени
от aNNiMON
Одной из распространённых задач является обрезка части видео.
Обрезка по времени делается при помощи ключей:
-ss — для указания начальной позиции, откуда будет вырезана часть
-to — для указания конечной позиции, до которой будет вырезана часть
-t — для указания длительности полученного результата
-sseof — для указания позиции с конца
Значение указывается в секундах (поддерживается десятичная точка и математические выражения) или в формате HH:mm:ss.
Параметры -ss и -sseof следует указывать до входного файла, тогда ffmpeg сможет быстро перейти к нужной позиции. Если указать после входного файла, поиск позиции будет заметно медленнее, но в некоторых случаях точнее.
Получить первые 40 секунд видео:
Пропустить первые 15 секунд, а остальное сохранить в result.mp4:
Не забывайте использовать -c copy для подходящих случаев. С его помощью обрезка будет очень быстрой!
Вырезать видео, начиная с 3 часов 22 минут 28 секунд:
Вырезать 10 минут аудио, начиная с 42 минуты:
Вырезать видео с 14 по 28 минуты:
-sseof позволяет указать сколько секунд отступить назад от конца видео.
Получить последние 30 секунд видео:
Получить предпоследние 30 секунд видео (отступить на 1 минуту назад и взять 30 секунд):
Следующая статья →Обрезка по времени делается при помощи ключей:
-ss — для указания начальной позиции, откуда будет вырезана часть
-to — для указания конечной позиции, до которой будет вырезана часть
-t — для указания длительности полученного результата
-sseof — для указания позиции с конца
Значение указывается в секундах (поддерживается десятичная точка и математические выражения) или в формате HH:mm:ss.
Параметры -ss и -sseof следует указывать до входного файла, тогда ffmpeg сможет быстро перейти к нужной позиции. Если указать после входного файла, поиск позиции будет заметно медленнее, но в некоторых случаях точнее.
Получить первые 40 секунд видео:
- ffmpeg -i input.mkv -t 40 result.mp4
- ffmpeg -ss 15 -i input.mp4 -c copy result.mp4
Вырезать видео, начиная с 3 часов 22 минут 28 секунд:
- ffmpeg -ss 03:22:28 -i input.mp4 -c copy result.mp4
- ffmpeg -ss 00:42:00 -i input.mp3 -t 10*60 result.mp3
- ffmpeg -ss 00:14:00 -i input.mp4 -to 00:28:00 result.mp4
-sseof позволяет указать сколько секунд отступить назад от конца видео.
Получить последние 30 секунд видео:
- ffmpeg -sseof 30 -i input.mp4 result.mp4
- ffmpeg -sseof 60 -i input.mp4 -t 30 result.mp4
Обрезка части видео или изображения (crop)