Если вы не работали ещё с ffmpeg для работы с видео, то попробуйте обязательно, это консольная кроссплатформенная программа, которая отлично справляется с редактированием видео файлов.
Когда время дорого и вам нужно сделать с видео просто ряд простых действий то ffmpeg как никогда лучше вам сможет в этом помочь.
Предположим, что вам нужно объединить видео файл и аудио файл, делается это очень просто, а именно:
ffmpeg -i video.mp4 -i audio.wav -c:v copy -c:a aac output.mp4
И как вы понимаете output.mp4 уже будет содержать и аудио и видео файл в одном.
Также предположим, вам нужно отрезать кусочек от видео и вам известно время начала и время сколько вам нужно отрезать.
ffmpeg -i input.mp4 -ss 00:05:20 -t 00:10:00 -c:v copy -c:a copy output1.mp4
Как вы понимаете отрежется кусочек от 05:20 и отрежет ровно 10:00 минут и запишется в файл output1.mp4
Если же вы знаете точное время начала и точное время конца, то достаточно ввести следующую команду:
ffmpeg -i input.mp4 -ss 00:05:10 -to 00:15:30 -c:v copy -c:a copy output2.mp4
И отрежется кусочек от 05:10 до 15:30.
Предположим, что вам нужно отрезать 10 минут от конца видео:
$ ffmpeg -sseof -600 -i input.mp4 -c copy output5.mp4
$ ffmpeg -sseof -00:10:00 -i input.mp4 -c copy output6.mp4
И в первом и втором случае мы отрежем ровно десять минут от конца видео.
Также вам нужно перекодировать видео для twitter:
ffmpeg -i input.mp4 -c:v libx264 -crf 20 -preset slow -vf format=yuv420p -c:a aac -movflags +faststart output.mp4
А может вам нужно отрезать кусочек и перекодировать видео:
ffmpeg -ss 00:05:20 -accurate_seek -i input.mp4 -t 00:10:00 -c:v libx264 -c:a aac output7.mp4
Изменить размер видео можно при помощи следующих команд, при чём результат будет идентичен, выберайте что подходит именно вам:
ffmpeg -i input.avi -s 720x480 -c:a copy output.mkv
ffmpeg -i input.avi -filter:v scale=720:-1 -c:a copy output.mkv
Если вам нужно обрезать 20 пикселей сверху и снизу, то попробуйте команду:
ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp4
Если же нужно обрезать только 40 пикселей снизу:
ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40:0:out_h" -c:a copy out.mp4
Предположим вам нужно вставить текст в центр видео:
ffmpeg -i input.mp4 -vf "drawtext=fontfile=/path/to/font.ttf:text='Text That Is Needed':fontcolor=white:fontsize=24:box=1:[email protected]:boxborderw=5:x=(w-text_w)/2:y=(h-text_h)/2" -codec:a copy output.mp4
path/to/font.ttf - это путь к шрифту, без этой команды непонятно какой шрифт вы хотите.
И после этого у вас в рамочке в центре появится текст.
Как видите программой ffmpeg довольно просто пользоваться когда немного в ней разберётесь.
Добавить комментарий