Как мне уменьшить размер огромного видео MP4?

98436
user1413

Я заплатил 59,95 долларов за Vimeo Plus только для того, чтобы установить ограничение в 1 ГБ для размера видео.

У меня есть 4 ГБ видеофайл MP4, который я снял на HD Flip Mino. Как мне уменьшить его до 1 ГБ без потери качества?

36

4 ответа на вопрос

59
Adam Rosenfield

Вы можете попробовать использовать что-то вроде ffmpeg или mencoder для перекодирования с более низкой скоростью передачи битов, например:

Рассчитайте необходимый вам битрейт, разделив 1 ГБ на длину видео в секундах. Итак, для видео длиной 16:40 (1000 секунд) используйте битрейт 1000000 байт / с:

ffmpeg -i input.mp4 -b 1000000 output.mp4 

Дополнительные параметры, которые стоит рассмотреть, - это установить коэффициент постоянной скорости, который снижает среднюю скорость передачи данных, но сохраняет лучшее качество. Изменяйте CRF между 18 и 24 - чем ниже, тем выше битрейт.

ffmpeg -i input.mp4 -vcodec libx264 -crf 20 output.mp4 
1000k лучше, чем 1000000 в "ffmpeg -i input.mp4 -b 1000000 output.mp4" iwill 11 лет назад 2
`-b` принимает битрейт, а не байтовую скорость. Если размер видео должен составлять 1 ГБ, а длительность составляет 1000 (одна тысяча) секунд, тогда требуемая скорость передачи битов составляет приблизительно 1e9 / 1000 * 8 = 8e6 (8 000 000) бит в секунду (бит / с). Jason 10 лет назад 9
получение .... Кодировщик 'aac' является экспериментальным, но экспериментальные кодеки не включены, добавьте '-strict -2', если вы хотите его использовать. NarendraJi 9 лет назад 1
@ Джейсон Я уверен, что ты имеешь в виду (1e9 * 8) / 1000. Другими словами (желаемый размер видео в байтах * 8) / (длина видео в секундах). Dante 8 лет назад 0
@ Данте, порядок операций заставляет ваши уравнения и мои вычислять одинаковое число. Хотя я вижу, что ставить "* 8" после деления может быть немного странно. Это все еще вычисляет к правильному результату. Ну ... если вы не думаете об ошибках округления и машинной математике ... тогда возможно, что они вычислят к немного другому результату. Jason 8 лет назад 0
@ Джейсон Ты был прав. Я рассчитал выражение как 1e9 / (1000 * 8). Я не принял во внимание приоритет и ассоциативность операторов. Dante 8 лет назад 0
9
Curtis Tasker

Вы можете неразрушающим образом редактировать файл, чтобы вырезать ненужные фрагменты (1 м от начала, 30 м от середины, 4 м от конца).

Кроме этого, вам придется перекодировать mp4 в файл меньшего размера. Попробуйте ручник .

  • Уменьшите разрешение от родного 1280x720 для Mino до чего-то меньшего, просто сохраните соотношение сторон.
  • Уменьшите битрейт со средней битрейта Mino до 9,0 Мбит / с до чего-то меньшего

В любом случае вы теряете качество. Попробуйте поиграть с любым из вариантов (или с обоими) и сравните результаты. Выберите то, что выглядит лучше всего и имеет правильный размер файла.

H.264 FTW! bgw 15 лет назад 2
4
Curious Apprentice

Используйте «HandBrake». Импортируйте файл. Выберите «Высокий профиль», а затем нажмите «Пуск». Он может сжать файл размером 100 МБ до 27 МБ или более. (Входной файл не должен быть в уже сжатом состоянии). Если вы используете Handbrake версии 0.9.5, тогда есть настройка для ввода размера файла, который вы хотите сжать. (Верхняя версия HB не имеет этой функции).

Sorenson Squeeze - еще один профессиональный инструмент уровня для такой работы.

1
Paul

Я наткнулся на этот вопрос, а затем наткнулся на следующий онлайн-сервис, который решает проблему:

https://clipchamp.com/

Очень хорошо, нет необходимости загружать файл, преобразование выполняется локально.

Похожие вопросы