Редактирование видео

FFMPEG изображения в видеоурок

FFMPEG изображения в видеоурок
Итак, вы заинтересованы в создании видео на основе изображений? Программное обеспечение Linux также может помочь вам с этой задачей, особенно с одной: ffmpeg.

Если вы еще этого не знаете, ffmpeg - это программа, которая выполняет преобразование и редактирование видео и аудио с помощью фильтров. Это тот, который поддерживает наибольшее количество различных кодеков. Если вы уже использовали VLC, то вы немного знаете ffmpeg: VLC использует ffmpeg для декодирования как можно большего количества видео.

Но прежде чем снимать видео, мне нужно рассказать вам несколько концепций, чтобы вы не заблудились на пути.

Концепции видео: как изображения могут работать в видео

Интегрировать изображения в видео не так уж сложно. И тому есть причина: видео основаны на серии изображений. Позволь мне объяснить.

Видео (даже видео на YouTube) - это набор неподвижных изображений, которые быстро меняются. В кино и кинотеатрах между каждым изображением есть черное изображение, потому что механизм должен переключать кадры и работал слишком медленно. Но это не заметно человеческому глазу, потому что механизм достаточно быстрый и из-за оптической иллюзии.

Но у компьютеров нет этой проблемы. ЖК-экраны просто продолжают отображать последнее изображение. В любом случае, вы можете извлечь независимое изображение из каждого изображения в видео. Когда изображение появляется из видео, оно называется Рамка. Это именно то, что вы видите, когда ставите видео на паузу - и когда вы это делаете, лица обычно не выглядят хорошо!

Как правило, видео из США содержат 30 кадров в секунду - осознать немного. Это 1800 кадров в минуту, 54000 кадров за полчаса видео или 108000 кадров в час. Это много, и поэтому иногда возникает вопрос, как одно изображение может весить 1 МБ, а одна минута видео 1080p может весить всего 15 МБ.

Количество изображений в секунду называется частота кадров. При скорости 30 кадров в секунду вы меняете изображение каждые 33 миллисекунды. В частности, если вы хотите снять одну минуту видео исключительно на основе ваших изображений, вам потребуется 1800 файлов в формате JPG или PNG в минуту.

Это полезно, если вы хотите выполнять расширенное редактирование видео без использования видео инструментов: вам просто нужно создать изображения для каждого кадра с вашими эффектами, а затем вы можете объединить его в видео. Но иногда вам нужно, чтобы неподвижное изображение сохранялось, потому что, ну, вы хотите, чтобы неподвижное изображение было в видео.

Хорошо, теперь пора установить ffmpeg.

Установите ffmpeg в Linux

В зависимости от вашего дистрибутива установка ffmpeg может быть простой или небольшой сложный. Это бесплатное программное обеспечение с общедоступным исходным кодом, но, поскольку оно может декодировать или кодировать запатентованные форматы, такие как MP4, некоторые дистрибутивы исключают его из своих репозиториев. Например, в Red Hat Enterprise Linux, CentOS и Fedora вам нужен RPMFusion из-за патентов. Более того, все версии Debian и Ubuntu до 16.04 распространяет ложную версию ffmpeg на основе незаконного форка.

Но прежде чем торопиться с установкой, возможно, нужная версия уже установлена? Проверим:

$ ffmpeg -version
ffmpeg версии X.XXXXXXXX Copyright (c) 2000-2018 разработчики FFmpeg

Если после копирайта вы видите «разработчики FFmpeg», значит у вас оригинальная версия FFMpeg, ничего делать не нужно. Однако, если вы видите:

$ ffmpeg -version
ffmpeg версии X.XXXXXXXX Copyright (c) 2000-2018 разработчики Libav

Тогда это означает, что вы используете вилка ffmpeg называется Libav. Debian и более старые версии Ubuntu тихо заменить FFMpeg на Libav. Если он сообщает, что он устарел, не обращайте на него внимания, это вводит в заблуждение. Если у вас установлена ​​вилка, пора удалить вашу версию ложного ffmpeg, а затем следовать руководству ниже, чтобы установить правильную версию. Наверное так:

$ sudo apt-get удалить ffmpeg

Итак, теперь вы, возможно, еще не установили его или у вас неправильная версия, пора его установить!

В Fedora, Red Hat Enterprise Linux (RHEL) и CentOS перейдите по адресу https: // rpmfusion.org / Configuration и включите бесплатный репозиторий RPMFusion на вашем компьютере. Затем, если вы используете Fedora, выполните:

$ sudo dnf установить ffmpeg

А для CentOS и Red Hat Enterprise Linux выполните:

$ sudo yum install ffmpeg

Это все для систем на базе Fedora и Red Hat, он установлен.

Во всех версиях Debian (и всех производных) и Ubuntu до 16.04, вам необходимо получить статическую сборку FFMpeg с официального сайта. Перейдите на https: // ffmpeg.org / download.html # build-linux и ниже "Статические сборки Linux", нажмите на "32-битные и 64-битные для ядра 2.6.32 и выше”. Затем ниже «выпуск: X.Икс.Икс”, Загрузите соответствующий архив, распакуйте его, и вы сможете запускать исполняемые файлы, находящиеся в распакованной папке, через интерфейс командной строки.

Для тех, кто использует Ubuntu 16.04 и выше, это проще, просто выполните:

$ sudo apt-get install ffmpeg

Уф! Наконец, нам должно быть хорошо идти! Перед тем как продолжить, проверьте в последний раз:

$ ffmpeg -version

ffmpeg версии X.XXXXXXXX Copyright (c) 2000-2018 разработчики FFmpeg

Создавайте видео из множества изображений

Итак, для нашего первого примера мы создадим видео из изображений, где каждое изображение представляет собой кадр, который будет отображаться в течение 33 миллисекунд. Позвольте мне сначала показать вам команду.

** MP4 и H.264 являются запатентованными кодеками, проверьте, имеете ли вы право кодировать с их помощью. **

$ ffmpeg -r: v 30 -i "Пингвины -% 05d.png "-codec: v libx264 -preset veryslow
-pix_fmt yuv420p -crf 28 -an "Пингвины".mp4 "

Хорошо, так как это работает? Чтобы эта команда работала, у вас должно быть много кадров, каждый из которых представляет собой файл, например Penguins - 00043.PNG. Затем эта команда объединит все кадры по порядку со скоростью 30 кадров в секунду. Итак, Пингвины - 00043.png идет раньше пингвинов - 00044.png в видео, и ffmpeg будет уважать это. Итак, если у вас 120 кадров, ваше видео будет иметь продолжительность 4 секунды.

Есть несколько требований к формату, ширине и высоте для работы фреймов. Если вы не соблюдаете эти правила, ffmpeg может игнорировать некоторые изображения или отменять процесс создания видео. Так:

Затем команде потребуется некоторое время, чтобы преобразовать видео, оптимизировать его производительность и сделать вам файл MP4 с именем Penguins.mp4.

Теперь вы можете захотеть, чтобы неподвижное изображение оставалось более 33 миллисекунд. В этом случае ваше видео представляет собой скорее слайд-шоу, и это не то же самое. Для этого вы можете сначала указать более низкую частоту кадров для ввода, а затем указать ffmpeg дублировать кадры на выходе. Нет, YouTube и Vimeo не оценят 0.Видео со скоростью 5 кадров в секунду, даже если вы меняете изображение каждые 2 секунды.

Лучше сделаем это:

$ ffmpeg -r: v 1/5 -i "Пингвины -% 05d.png "-r: v 30 -codec: v libx264 -preset veryslow
-pix_fmt yuv420p -crf 28 -an "Пингвины".mp4 "

Вот мы идем! ffmpeg заставит каждое из ваших изображений отображаться в течение 5 секунд, но в видео с частотой 30 кадров в секунду. Не беспокойтесь о предупреждении о повторяющихся кадрах: это то, что вам нужно.

Заключение

Теперь ты - новый спилберг - возможность создавать свои собственные видео. Вы можете сделать простое слайд-шоу или подготовить видео кадр за кадром с помощью редактора изображений, такого как GIMP, но вы также можете воспользоваться большим набором эффектов и кодеков, которые вы можете найти в ffmpeg.

Найдите время, чтобы поэкспериментировать самостоятельно - ты же художник, в конце концов - и создайте видео, которое наберет миллионы просмотров на YouTube!

Установите последнюю версию эмулятора Dolphin для Gamecube и Wii в Linux
Эмулятор Dolphin позволяет вам играть в выбранные вами игры Gamecube и Wii на персональных компьютерах (ПК) Linux. Являясь свободно доступным игровым...
Как использовать чит-движок GameConqueror в Linux
В статье содержится руководство по использованию чит-движка GameConqueror в Linux. Многие пользователи, играющие в игры на Windows, часто используют п...
Лучшие эмуляторы игровой консоли для Linux
В этой статье будет перечислено популярное программное обеспечение для эмуляции игровых консолей, доступное для Linux. Эмуляция - это уровень совмести...