Попрощайтесь с медленными, глючными и заполненными рекламой сайтами-конвертерами

Устали полагаться на медленные, заполненные рекламой сайты-конвертеры или сложные инструменты для создания GIF-файлов из ваших видео? Не смотрите дальше! В этой статье я покажу, как вы можете создать свой собственный простой и эффективный генератор GIF, используя мощную комбинацию FFmpeg и Node.js. Это решение не только дает вам полный контроль над процессом создания GIF, но и упрощает его, делая его быстрее и надежнее, чем когда-либо прежде.

Что такое FFmpeg?

FFmpeg — это универсальный программный проект с открытым исходным кодом, который специализируется на решении широкого круга мультимедийных задач. Эти задачи включают преобразование видео и аудио, потоковую передачу и редактирование, что делает его незаменимым инструментом как для любителей мультимедиа, так и для профессионалов. Его надежные возможности и гибкость сделали его популярным среди разработчиков и пользователей по всему миру. fluent-ffmpeg, удобный пакет npm, предоставляет удобный API, чтобы сделать работу с этой библиотекой еще проще. Вы, вероятно, рассмотрите библиотеку, если хотите создать свой собственный веб-сайт для создания gif-файлов, но для целей простого скрипта или инструмента разработчика для вашей команды мы можем использовать нативную реализацию оболочки.

Теперь давайте начнем!

  1. Перейдите на страницу загрузок (https://ffmpeg.org/download.html) или установите его с помощью homebrew (brew install ffmpeg).
  2. Создайте папку, содержащую ваши `file_name.js` и `recording_name.mov`.

Если вы работаете с существующим репозиторием, вам может быть проще использовать команду оболочки. Убедитесь, что вы запускаете команду из того же каталога, что и файл mp4 или mov, который вы хотите преобразовать.

const { exec } = require("child_process");
exec("ffmpeg -i input.mov -qscale 0 output.gif");

Всего две строки кода — и у вас есть работающий генератор GIF, который будет работать лучше, чем медленные, заполненные рекламой веб-сайты-конвертеры, которые вы использовали. Давайте разберем это:

  1. Мы импортируем функцию `exec` из модуля `child_process` в Node.js. Эта функция позволяет нам выполнять команды оболочки из нашего кода JavaScript.
  2. Мы используем функцию `exec` для запуска команды FFmpeg, которая принимает следующие аргументы:
    — `-i input.mov`: указывает входной файл (в данном случае видеофайл `.mov`) который мы хотим преобразовать в GIF.
    — `-qscale 0`: Это устанавливает качество выходного GIF. Меньшее значение (например, 0) соответствует более высокому качеству GIF, а более высокое значение приводит к более низкому качеству.
    — `output.gif`: это имя выходного файла, который будет создан командой FFmpeg. .

Примечание. В документации FFMPEG доступно множество других параметров настройки. Все это смотрите здесь.

Закрытие

В этой статье мы увидели, насколько просто создать свой собственный инструмент разработчика, который сэкономит ваше время, деньги и рассудок. Я призываю всех своих коллег-разработчиков исследовать создание инструментов и посмотреть, смогут ли они найти и создать сценарии или библиотеки, чтобы повысить эффективность своей разработки при изучении новых концепций.