Я знаю, что это старый вопрос, но ни один из текущих ответов больше не является рекомендуемым способом. Это руководство от вики ffmpeg. Обратите внимание, что все эти параметры требуют перекодирования видео.
Ускорение / замедление видео
Вы можете изменить скорость видеопотока, используя фильтр видео setpts. Обратите внимание, что в следующих примерах аудиопоток не изменяется, поэтому в идеале его следует отключить с помощью -an.
Чтобы удвоить скорость видео, вы можете использовать:
ffmpeg -i input.mkv -filter:v "setpts=0.5*PTS" output.mkv
Фильтр работает путем изменения метки времени представления (PTS) каждого видеокадра. Например, если на временных метках 1 и 2 показаны два последовательных кадра и вы хотите ускорить видео, эти временные метки должны равняться 0,5 и 1 соответственно. Таким образом, мы должны умножить их на 0,5.
Обратите внимание, что этот метод пропускает кадры для достижения желаемой скорости. Вы можете избежать пропущенных кадров, указав более высокую частоту кадров на выходе, чем на входе. Например, чтобы перейти от входа 4 FPS к тому, который увеличен до 4x, что (16 FPS):
ffmpeg -i input.mkv -r 16 -filter:v "setpts=0.25*PTS" output.mkv
Чтобы замедлить ваше видео, вы должны использовать множитель больше 1:
ffmpeg -i input.mkv -filter:v "setpts=2.0*PTS" output.mkv
Гладкий; плавный
Вы можете сгладить медленное / быстрое видео с помощью видеофильтра minterpolate. Это также известно как "интерполяция движения" или "оптический поток".
ffmpeg -i input.mkv -filter "minterpolate='mi_mode=mci:mc_mode=aobmc:vsbmc=1:fps=120'" output.mkv
Другие варианты включают slowmoVideo и Butterflow.
Ускорение / замедление звука
Вы можете ускорить или замедлить звук с помощью аудио фильтра atempo. Чтобы удвоить скорость звука:
ffmpeg -i input.mkv -filter:a "atempo=2.0" -vn output.mkv
Фильтр atempo ограничен использованием значений от 0,5 до 2,0 (поэтому он может замедлять его не менее чем до половины первоначальной скорости и увеличивать скорость до не более чем вдвое). Если вам нужно, вы можете обойти это ограничение, объединив несколько фильтров atempo. Следующее с четырехкратной скоростью звука:
ffmpeg -i input.mkv -filter:a "atempo=2.0,atempo=2.0" -vn output.mkv
Используя сложный фильтр графа, вы можете ускорить видео и аудио одновременно:
ffmpeg -i input.mkv -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2.0[a]" -map "[v]" -map "[a]" output.mkv