У меня есть файл MP4 записи экрана, который мне нужно обрезать. Как я могу сделать это без использования дорогих инструментов, таких как Adobe Premier или Final Cut? Я предпочитаю, ffmpegпотому что я использовал это раньше.
У меня есть файл MP4 записи экрана, который мне нужно обрезать. Как я могу сделать это без использования дорогих инструментов, таких как Adobe Premier или Final Cut? Я предпочитаю, ffmpegпотому что я использовал это раньше.
Ответы:
Используйте cropфильтр :
ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4
Где варианты следующие:
out_w ширина выходного прямоугольникаout_h высота выходного прямоугольникаxи yукажите верхний левый угол выходного прямоугольника
Оригинальное изображение 320x240

Чтобы обрезать секцию 80 × 60, начиная с позиции (200, 100):
ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4

Чтобы обрезать нижнюю правую четверть:
ffmpeg -i in.mp4 -filter:v "crop=in_w/2:in_h/2:in_w/2:in_h/2" -c:a copy out.mp4
Это так же, как:
ffmpeg -i in.mp4 -filter:v "crop=320/2:240/2:320/2:240/2" -c:a copy out.mp4
Который так же, как:
ffmpeg -i in.mp4 -filter:v "crop=240:120:240:120" -c:a copy out.mp4
in_wи, in_hкак показано в этом первом примере. Ширина и высота вывода также могут быть использованы с out_wи out_h.
Обрежьте 20 пикселей сверху и 20 снизу:
ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp4
xи yопущены, как в этом примере.Вы можете взять урожай (хе-хе) и просмотреть его вживую ffplay:
ffplay -i input -vf "crop=in_w:in_h-40"
Таким образом, вы можете экспериментировать и настраивать кадрирование без необходимости кодировать, просматривать, повторять.
Кодировщик по умолчанию для MP4 - libx264(видео H.264) или mpeg4( видео MPEG-4 Part 2) в зависимости от вашей ffmpegсборки. См. FFmpeg Wiki: Руководство по кодированию видео H.264 для получения дополнительной информации.
Вместо обрезки и перекодирования рассмотрите обрезку при воспроизведении. Это возможно с любым игроком, который стоит использовать.
Древние ffmpegсборки используются -croptop, -cropbottom, -cropleft, -croprightварианты вместо этого cropфильтра. Если это так, то приобретите современноеffmpeg . Развитие очень активно и нет оснований использовать антиквариат.
/Users/kukodajanos/Workspace/ffmpeg -i /Users/kukodajanos/Desktop/video_640x480-2.mp4 -filter:v "crop=1920:1080:0:0" -c:a copy /Users/kukodajanos/Desktop/video_640x480-4.mp4но оригинальный фильм возвращается.
cropфильтром) перекодирует видео, см. stackoverflow.com/questions/33378548/… если перекодировка имеет значение для вас
-filter:vна более современное и более простое для ввода -vf. Ура!