Я хочу создать замедленную съемку из коллекции изображений под Ubuntu. Я хотел бы сделать HD-видео, и в идеале добавить саундтрек.
ffmpeg сделает это. Если у вас есть изображения, img001.jpg, img002.jpg, img003.jpg, ...
то в командной строке выполните:
ffmpeg -i img*.jpg output.mpeg
Есть больше вариантов, приведенных на ffmpeg --help
справочных страницах или в Интернете. Они позволяют контролировать частоту кадров и выходной формат.
.jpg
файлы такими, как выходной файл. Я понимаю File 'DSCF6134.JPG' already exists. Overwrite ? [y/N]
- не очень. Мое решение состояло в том, чтобы сгенерировать список файлов, \ls *.JPG | sed "s/^/file '/;s/$/'/" > files.txt
а затем загрузить его с помощью ffmpeg -f concat -i files.txt output.mpeg
.ffmpeg -pattern_type glob -i "picture*.jpg" output.mpeg
Сначала мы переименовываем все файлы *.JPG в зависимости от даты их создания. Иногда камеры меняют имя файла или просто упорядочить их как-то не то, что нам нужно. Однако переименование их по дате создания всегда работает:
jhead -n%Y%m%d-%H%M%S *.JPG
После этого помещаем этот список в файл:
ls -1tr | grep -v files.txt > files.txt
А затем используйте mencoder
для создания AVI
видео с частотой 20 кадров в секунду. Обратите внимание, что это создаст огромный видеофайл, обычно примерно такого же размера, как и все суммированные изображения.
mencoder -nosound -noskip -oac copy -ovc copy -o output.avi -mf fps=20 'mf://@files.txt'
Обычно я делаю снимки для таймлапса с самым низким разрешением моей камеры (5 Мп), которое имеет соотношение сторон 4:3. Чтобы создать правильное видео 1080p, изображение сначала масштабируется до 1920 пикселей по ширине, а затем я обрезаю его до 1080 по высоте. Таким образом, я не меняю содержимое фотографий, а просто обрезаю:
ffmpeg -i output.avi -y -sameq -vf scale=1920:1440,crop=1920:1080 output-final.avi
Причина, по которой я использую mencoder для объединения фотографий, заключается в том, что у меня есть файл segmentation fault
с ffmpeg.
ffmpeg
команде -sameq
опция теперь заменена на-qscale 0
Blender — хорошее решение, если вы имеете дело с таймлапсом движения (гиперлапсом) или неустойчивыми кадрами. Он имеет возможности отслеживания движения, поэтому вы можете выбрать фиксированную точку для отслеживания на протяжении всего таймлапса. Вы также можете исправить проблемы с вращением.
Вас также может заинтересовать проект timelapse-darktable . Это упрощает постобработку изображений с помощью darktable и создание замедленной съемки серии. Инструкции по его использованию можно найти здесь: https://code.google.com/p/timelapse-darktable/wiki/generateTimelapse .
Вы можете использовать менкодер. Параметры довольно явные:
Если все они находятся в текущем каталоге с упорядоченными именами и вам нужен список в файле /tmp/files.txt:
ls -1 *jpg > /tmp/files.txt
Если вы хотите, чтобы выходной файл был /tmp/test.avi со скоростью 30 кадров в секунду:
mencoder -nosound -ovc lavc -lavcopts vcodec=mpeg4 -o /tmp/test.avi -mf type=jpeg:fps=30 mf://@/tmp/files.txt
Kdenlive также может создавать таймлапсы с помощью Add Slideshow Clip
меню, как описано в этом руководстве .
Согласно тому же сайту , Openshot имеет аналогичную функциональность, но не рекомендует ее, потому что она «слишком глючная». Тем не менее, если это ваш любимый видеоредактор, вы будете рады узнать, что вы можете просто перетащить последовательность файлов с правильными именами (от 001.jpg до NNN.jpg) в окно Openshot, чтобы также импортировать их в виде таймлапса.
Фредерико Шардонг
Фредерико Шардонг
анаркот