В итоге я использовал ffmpeg из командной строки для выполнения необходимого отсечения.
Проведя некоторые исследования на этом сайте и попробовав несколько более простых команд, я придумал следующую команду:
ffmpeg -ss 00:01:00 -i input.mp4 -ss 00:02:00 -c copy -to 00:05:10 \
output.mp4
Насколько я понимаю, с помощью этой команды ffmpeg в основном копирует часть клипа из input.mp4 в output.mp4 (без перекодирования). ffmpeg быстро выполняет поиск до отметки 1 мин (первая -ss 00:01:00
), затем начинает поиск ключевых кадров и выводит клип от 3 минут в клип (заданный вторым -ss
параметром) до 6 минут и 10 секунд в клип (заданный -to 00:05:10
) , Таким образом, выводится клип продолжительностью 3 минуты 10 секунд (5:10 - 2:00).
ПРИМЕЧАНИЕ: время, указанное в 2-й -ss
опции и -to
опции, относится ко времени, указанному в первой -ss
опции.
Чтобы узнать больше об этих и других опциях, посмотрите отличные ответы на вопрос Использование ffmpeg для разрезания видео .
Этот метод был на удивление быстрым (10-15 секунд), но в течение первых 2-3 секунд клипа звук был бы хорошим, но без соответствующего видео. И звук, и качество видео казались неотличимыми от оригинала после этих первых 2-3 секунд.
Удаление -c copy
части решило и эту проблему. Это означает, что видео будет перекодировано - на это уйдет больше времени (мой 13-дюймовый MacBook Pro в конце 2011 года занял 80-90% времени работы клипа), - но качество звука и видео было превосходным, а размер файла был меньше размера файла. оригинал (в пересчете на МБ / мин воспроизведения)!
Итак, последняя команда, на которой я остановился, была:
ffmpeg -ss 00:01:00 -i input.mp4 -ss 00:02:00 -to 00:05:10 -strict -2 \
output.mp4
Эта -strict -2
часть была добавлена в команду на основе предложения от ffmpeg, так как поддержка кодирования X.264 все еще является экспериментальной,
Для использования ffmpeg я скачал предварительно скомпилированный ffmpeg с ffmpegmac.net , поместил его в каталог, который, как я уже знал, был на моем PATH
и был готов к работе!
-c copy
, вы должны использовать параметры, упомянутые здесь: trac.ffmpeg.org/wiki/Encode/H.264 , в основном-crf 23
, и выбрать более низкое значение для лучшего качества (нормальные значения между 18–28).