Какой рейтинг вас больше интересует?
|
Как ускорить или замедлить видеоролик2009-07-20 23:59:00 (читать в оригинале)Иногда нужно замедлить (растянуть) видеоролик, чтобы он игрался как будто в режиме замедленного воспроизведения, а иногда нужно наоборот, показать «на перемотке» слишком длинный ролик, выбросить часть кадров и ускорить воспроизведение. О том как это сделать — сия заметка. Изменить частоту кадров в видеопотоке позволяет программа yuvfps из пакета mjpegtools . Как и большинство утилит пакета она принимает и отдаёт видеопоток в формате YUV4MPEG. И ffmpeg , и mencoder тоже умеют работать с YUV4MPEG (и умеют читать и писать всякие другие форматы). Я приведу пример использования ffmpeg .Итак, чтобы ускорить видео, нужно взять исходный файл и посмотреть, какая в нём частота кадров $ ffmpeg -i normal.ogg В данном случае исходный файл — 30 кадров в секунду. Затем нужно решить, во сколько раз уменьшить число кадров (исходя из желаемой длительности ролика). Потом берём исходный файл ( normal.ogg в примере) и преобразовываем его в YUV4MPEG-поток (первый вызов ffmpeg ), после нужно дважды вызвать yuvfps , первый раз, чтобы изменить число кадров в потоке (yuvfps -s 5:2 -r 1:1 сокращает исходные 2.5 кадра до одного), второй раз, чтобы перезаписать заголовок потока, указав скорость воспроизведения (yuvfps -r 30:1 -c устанавливает скорость 30 кадров в секунду). В конце опять вызываем ffmpeg и кодируем в нужный формат (я сохранил в формате Ogg/Theora, чтобы можно было вставлять в веб-странички тэгом <video> ). Всё вместе:$ ffmpeg -i normal.ogg -sameq -f yuv4mpegpipe - | \ Аналогично можно увеличить число кадров. Дополнительные кадры интерполируются: $ ffmpeg -i normal.ogg -sameq -f yuv4mpegpipe - | \ В этот раз видео замедляется в 3 раза: на каждую «треть» исходного кадра ( -s 1:3 ) создаётся целый кадр (-r 1:1 ). Вообще, как легко заметить, в качестве частоты кадров для yuvfps можно указывать любые дроби в виде числитель:знаменатель.Немного более гладкой интерполяции при увеличении числа кадров вроде бы можно добиться, если использовать yuvmotionfps, но чудес он не делает. Теперь можно сравнить все три видео. Для просмотра нужен современный браузер с поддержкой тэга <video/> .Исходное видео: Ускоренное в 2.5 раза: И замедленное в 3 раза: P.S. В качестве иллюстрации использовал ролик Breitenlee-VESTAS-V-52.
|
Категория «Дизайн»
Взлеты Топ 5
Падения Топ 5
Популярные за сутки
|
Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.