ffmpeg обеспечивает эту функцию. Все, что вам нужно сделать, это запустить что-то вроде
ffmpeg -i <inputfilename> -s 640x480 -b 512k -vcodec mpeg1video -acodec copy <outputfilename>
Для новых версий ffmpeg вам нужно изменить -b
на -b:v
:
ffmpeg -i <inputfilename> -s 640x480 -b:v 512k -vcodec mpeg1video -acodec copy <outputfilename>
для преобразования входного видеофайла в видео размером 640 x 480 и битрейтом 512 килобит / с с использованием видеокодека MPEG 1 и просто копированием исходного аудиопотока. Конечно, вы можете вставить любые значения, которые вам нужны, и поэкспериментировать с размером и битрейтом, чтобы достичь соотношения качество / размер, которое вы ищете. Есть также множество других опций, описанных в документации
Запустите ffmpeg -formats
или ffmpeg -codecs
, чтобы получить список всех доступных форматов и кодеков. Если вам не нужен целевой кодек для окончательного вывода, вы можете достичь лучших коэффициентов сжатия с минимальными потерями качества, используя современный кодек, такой как H.264.