🔊 Да, я знаком с библиотекой FFmpeg — это мощный инструмент для работы с мультимедиа, который позволяет кодировать, декодировать, конвертировать, изменять и обрабатывать аудио и видео файлы. Вот несколько полезных команд, которые могут тебе пригодиться:
ffmpeg -i input.mp4 output.avi
Здесь input.mp4
— исходный файл, а output.avi
— файл в новом формате.
ffmpeg -i input.mp4 -q:a 0 -map a output.mp3
Эта команда извлекает аудио из видео и сохраняет его в формате MP3.
ffmpeg -i input.mp4 -ss 00:01:00 -to 00:02:00 -c copy output.mp4
Обрезает видео с 1-й по 2-ю минуту. Параметр -c copy
позволяет сохранить оригинальное качество.
ffmpeg -i input.mp4 -vf scale=1280:720 output.mp4
Изменяет разрешение видео до 1280x720 пикселей.
ffmpeg -i input.mp4 -vf "fps=10,scale=320:-1" output.gif
Создает GIF из видео с частотой 10 кадров в секунду и шириной 320 пикселей.
ffmpeg -i input.mp4 -i watermark.png -filter_complex "overlay=10:10" output.mp4
Накладывает изображение watermark.png
на видео в позиции (10, 10).
ffmpeg -i input.mp4 -r 1 -f image2 output_%03d.png
Извлекает 1 кадр в секунду и сохраняет их в формате PNG.
Создайте файл list.txt
с именами файлов:
file 'video1.mp4'
file 'video2.mp4'
Затем выполните команду:
ffmpeg -f concat -i list.txt -c copy output.mp4
ffmpeg -i input.mp4 -vcodec libx264 -crf 28 output.mp4
Сжимает видео с использованием кодеков H.264. Параметр -crf
регулирует качество (чем меньше значение, тем выше качество).
ffmpeg -i input.mp4 -b:a 128k output.mp4
Устанавливает битрейт аудио на 128 кбит/с.
🔊 FFmpeg — это мощный инструмент с огромным количеством ключей (опций), которые позволяют гибко управлять процессом обработки мультимедиа. Вот основные ключи с пояснениями их назначения:
-
-i <input_file>
Указывает входной файл (видео, аудио или изображение).
ffmpeg -i input.mp4
-
-c[:stream_specifier] <codec>
Указывает кодек для кодирования или копирования потоков.
ffmpeg -i input.mp4 -c:v libx264 output.mp4
(кодирует видео с использованием H.264) -
-c:v <video_codec>
Указывает видеокодек.
ffmpeg -i input.mp4 -c:v libx265 output.mp4
(кодирует видео с использованием H.265) -
-c:a <audio_codec>
Указывает аудиокодек.
ffmpeg -i input.mp4 -c:a aac output.mp4
(кодирует аудио с использованием AAC) -
-c:s <subtitle_codec>
Указывает кодек для субтитров.
ffmpeg -i input.mkv -c:s mov_text output.mp4
(кодирует субтитры в формат MOV_TEXT) -
-f <format>
Указывает формат выходного файла.
ffmpeg -i input.mp4 -f avi output.avi
-
-y
Перезаписывает выходной файл без запроса подтверждения.
ffmpeg -i input.mp4 -y output.mp4
-
-n
Запрещает перезапись выходного файла, если он уже существует. -
-hide_banner
Скрывает информацию о версии FFmpeg и лицензии при запуске.
-
-vf <filter_graph>
Применяет видеографический фильтр.
ffmpeg -i input.mp4 -vf "scale=640:360" output.mp4
(изменяет разрешение видео) -
-ss <time>
Указывает начальную точку для обрезки или обработки.
ffmpeg -i input.mp4 -ss 00:01:00 -to 00:02:00 output.mp4
(обрезает видео с 1-й по 2-ю минуту) -
-to <time>
Указывает конечную точку для обрезки или обработки. -
-t <duration>
Указывает продолжительность обработки.
ffmpeg -i input.mp4 -t 10 output.mp4
(обрабатывает только первые 10 секунд) -
-r <fps>
Устанавливает частоту кадров (FPS).
ffmpeg -i input.mp4 -r 30 output.mp4
(устанавливает FPS на 30) -
-aspect <ratio>
Устанавливает соотношение сторон видео.
ffmpeg -i input.mp4 -aspect 16:9 output.mp4
-
-s <width>x<height>
Устанавливает разрешение видео.
ffmpeg -i input.mp4 -s 1280x720 output.mp4
-
-b:v <bitrate>
Устанавливает битрейт видео.
ffmpeg -i input.mp4 -b:v 1M output.mp4
(1 Мбит/с) -
-crf <value>
Устанавливает качество видео (для кодеков H.264/H.265). Чем меньше значение, тем выше качество.
ffmpeg -i input.mp4 -crf 23 output.mp4
-
-preset <speed>
Устанавливает скорость кодирования (отultrafast
доveryslow
).
`ffm
🔊 Чтобы добавить дополнительную аудиодорожку и субтитры в существующий видеофайл с помощью FFmpeg, можно использовать следующую команду:
ffmpeg -i input.mp4 -i audio.mp3 -i subtitles.srt -map 0:v -map 1:a -map 0:a -map 2 -c:v copy -c:a copy -c:s mov_text output.mp4
-
-i input.mp4
Основной видеофайл, в который добавляются аудио и субтитры. -
-i audio.mp3
Дополнительная аудиодорожка, которую нужно добавить. -
-i subtitles.srt
Файл субтитров, который нужно добавить. -
-map 0:v
Выбирает видео из первого входного файла (input.mp4
). -
-map 1:a
Выбирает аудио из второго входного файла (audio.mp3
). -
-map 0:a
Выбирает аудио из первого входного файла (input.mp4
), чтобы сохранить оригинальную аудиодорожку. -
-map 2
Выбирает субтитры из третьего входного файла (subtitles.srt
). -
-c:v copy
Копирует видео без перекодирования. -
-c:a copy
Копирует аудио без перекодирования. -
-c:s mov_text
Указывает кодек для субтитров (подходит для MP4). -
output.mp4
Имя выходного файла.
Если у вас есть файл video.mp4
, аудио music.mp3
и субтитры subtitles.srt
, команда будет выглядеть так:
ffmpeg -i video.mp4 -i music.mp3 -i subtitles.srt -map 0:v -map 1:a -map 0:a -map 2 -c:v copy -c:a copy -c:s mov_text output.mp4
- Если вы хотите перекодировать аудио или видео, замените
-c:a copy
или-c:v copy
на нужный кодек (например,-c:a aac
для аудио AAC). - Если субтитры в формате
.ass
или.ssa
, используйте-c:s ass
вместо-c:s mov_text
. - Если вы хотите удалить оригинальную аудиодорожку, уберите
-map 0:a
.
Если что-то непонятно или нужно уточнить, дайте знать! 😊