Листы эскизов - это типичные файлы изображений, содержащие кадры из видео. Листы эскизов видео происходят из листов фотографий, которые были более популярны около десяти лет назад, когда люди еще печатали свои фотографии. Точно так же, как листы с фотографиями тогда служили превью для изображений в фильмах и SD-картах, миниатюры, которые мы видим здесь, работают как превью для видеофайла. Их легче и быстрее пролистывать, чтобы проверить содержание и качество видео, вместо того, чтобы открывать его в медиаплеере для "сканирования" от начала до конца.
К счастью, вам не нужно извлекать определенные кадры из видео, а затем вручную размещать их в одном изображении. Вы можете использовать инструменты, чтобы легко создавать миниатюры из видео. В этой статье мы покажем вам два способа сделать это в Linux.
Использование видео Gnome
Если вы используете Gnome, его медиаплеер по умолчанию с именем "Видео" (на самом деле "Видео Gnome", поскольку он является частью набора инструментов Gnome и до недавнего времени был известен как "Тотем"), предлагает вариант для простого создание листов эскизов.
Чтобы использовать его, запустите программу.

Откройте видео, из которого вы хотите создать несколько листов эскизов, а затем в меню приложения выберите "Создать галерею снимков экрана…"

Во всплывающем окне будут предложены некоторые основные параметры ваших листов эскизов. Вы можете изменить ширину каждой миниатюры и либо позволить программе выбрать количество снимков экрана автоматически, либо выбрать, сколько вы хотите.
Затем вам нужно только ввести имя файла листа изображений в верхней средней части окна и нажать кнопку "Сохранить" в правом верхнем углу.

Созданный файл полезен, но если он не выглядит так, как вы ожидали, вы мало что можете сделать. Для большего контроля над результатами вам нужно будет использовать что-то, что предлагает больше возможностей.

Использование FFMPEG
FFMPEG - это, по общему признанию, очень сложный инструмент командной строки, который вы можете использовать для работы с вашими видео разными способами. Один из них - создание листов эскизов. Однако для этого вам нужно создать довольно сложную команду. Это будет выглядеть примерно так:
ffmpeg-ss3-i"/path/to/video/file.mp4"-frames5-vf"select=not(mod(n\,3000)),scale=320:240,tile=4x3"-vsync vfr -q:v 10 image-sheet-filename_%03d.jpg

-ss
определяет временной сдвиг от начала видеофайла. Большинство видеороликов начинаются с последовательности заголовков, и в большинстве случаев использовать ее миниатюру нецелесообразно. С помощью этого переключателя мы инструктируем FFMPEG игнорировать "X" секунд от начала видео, чтобы пропустить его, вероятно, не очень захватывающее введение.-i
устанавливает входной файл, из которого FFMPEG будет извлекать свои эскизы.-frames
определяет количество кадров, которые будут записаны.-q: v
устанавливает качество сжатия создаваемых файлов изображений.
Что касается самой интересной, но также сложной части этой команды, нам придется немного ее расширить, поскольку она выполняет сразу три задачи. Речь об этом:
- vf "select=not (mod (n \, 3000)) , scale=320: 240, tile=4x3 "
-vf
в начале указывает FFMPEG использовать видеофильтр. Select=not (mod (n \, 3000))
отвечает за выбранные кадры в конечных изображениях. Он делит номер текущего кадра ("n") на предоставленный номер ("3000"). Достигло ли видео кадра 3001? Если мы разделим 3001 на число 3000, мы получим 1, так что этот кадр будет первым в первом созданном листе изображения. Мы достигли 6001 кадра? Поскольку 6001/3000 дает нам 2, это будет второй кадр и так далее. Таким образом, уменьшая это число, вы увеличиваете частоту выбора кадра и наоборот.

С помощью части scale=320: 240
мы устанавливаем размеры каждого эскиза на конечном листе эскизов. Для достижения наилучших результатов это должно быть часть разрешения исходного видео с учетом его соотношения сторон.

Наконец, часть команды tile=4x3
определяет, как эскизы будут расположены на каждом листе.

Возможно, вы заметили, что окончательное имя файла для созданного файла изображения выглядит так:
filename_ % 03d.jpg
В части % 03d
указано, что если FFMPEG в конечном итоге выберет больше кадров, чем может поместиться на одном листе, в зависимости от настроек заголовка, он создаст больше листов изображений с пронумерованными именами файлов. Уменьшая "n \, NUMBER" выбора или количество плиток на каждом листе, будет создано больше файлов, и наоборот.

Конечно, это также зависит от длины видеофайла. В конце концов, это всего лишь математика: в трех-полуторачасовой эпопее вроде "Властелина колец" на сотни тысяч кадров больше, чем в одном из короткометражек Pixar.
Если вы хотите контролировать количество файлов листов изображений, создаваемых FFMPEG, используйте следующее уравнение:
Общее количество кадров в вашем видео / количество фрагментов на листе / количество листов с изображениями, которые вы хотите
Используйте значение из части команды "mod (n \, RESULTS)".
Если вы предпочитаете использовать отдельные изображения, а не лист миниатюр, FFMPEG также позволяет декомпилировать видео на отдельные изображения.
Какими еще способами вы можете создать лист миниатюр из вашего видео?
Один комментарий
Комментарии закрыты.
Привет
Если честно, ваша статья информативна. Я ищу на многих сайтах информацию о том, как создавать таблицы эскизов для ваших видео в Linux, но не получил нужной информации.
Я видел ваш сайт и читал его. Отсюда я получил новую информацию. Это полезно для многих, таких как я.
Спасибо, что поделились вашей доброй информацией.