Я хочу уменьшить размер видео. Видео может быть .flv, .avi и т. Д. Я хочу сделать это из терминала. Как я могу это сделать?
Это должно запуститься с протеста, то транскодирование между форматами данных с потерями будет обычно включать потерю качества.
Существует много опций здесь:
Преобразуйте более старые форматы (MPEG-1
, DivX 3
и т.д.) к более новым и более эффективным кодекам (например, x264
, theora
) который будет обычно главным образом сохранять видео/качество звука в меньшем выводе.
Уменьшите целевую скорость передачи или будьте нацелены на выходной размер, улучшив размер за счет качества воспроизведения.
Уменьшите видео размеры, позволив подобное качество воспроизведения в более низком общем размере.
Если у Вас нет веских причин другого выбора, x264
для видео и aac
для аудио в mp4
контейнер является хорошим выбором по качеству и довольно широкой совместимости (но необходимо закодировать что-то короткое и попробовать его на чем-либо, что Вы захотите играть его на - получение широко играемых транскодированных результатов остается упражнением в колдовстве).
Я нахожу, что текущая команда обслуживает меня довольно хорошо для преобразования более старых форматов:
avconv -y -i INPUT -pre:v libx264-slower -b:a 96k -c:v libx264 -c:a libvo_aacenc OUTPUT.mp4
Можно уменьшить масштаб размера изображения путем добавления -vf scale=iw*0.5:ih*0.5
перед выходным именем или набором видео скорость передачи -b:v
, или игра с многопроходными опциями..., но главным образом вышеупомянутым произведет разумный результат.