Я хочу створити часовий проміжок з колекції зображень під Ubuntu. Я хотів би зробити відео HD та в ідеалі додати саундтрек.
Я хочу створити часовий проміжок з колекції зображень під Ubuntu. Я хотів би зробити відео HD та в ідеалі додати саундтрек.
Відповіді:
Ffmpeg це зробить. Якщо у вас є зображення, img001.jpg, img002.jpg, img003.jpg, ...
то в командному рядку виконайте:
ffmpeg -i img*.jpg output.mpeg
Є більше варіантів, наведених на ffmpeg --help
сторінках або man, або в Інтернеті. Вони дозволяють контролювати частоту кадрів та формат виводу.
.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
Блендер - це хороше рішення, якщо ви маєте справу з часовим промігом руху (гіперлапсом) або нестабільним кадром. Він має функції відстеження руху, тому ви можете вибрати фіксовану точку, яку слід відстежувати протягом усього проміжку часу. Ви також можете виправити проблеми з обертанням.
Можливо, вас також зацікавить timelapse-darktable проекту . Це дозволяє легко обробляти зображення за допомогою темних темних та робити часовий проміжок серії. Інструкції щодо його використання ви знайдете тут: https://code.google.com/p/timelapse-darktable/wiki/generateTimelapse
Ви можете використовувати mencoder. Варіанти досить прикладні:
Якщо всі вони знаходяться в каталозі лікувальних препаратів із упорядкованими іменами, і ви хочете, щоб список у файлі /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), у вікно відкриття, щоб імпортувати їх як часовий проміжок.