Как перевести команду ffmpeg на Node.js с использованием пакета fluent-ffmpeg?

Как можно использовать пакет npm `fluent-ffmpeg` для переписания основной части команды ffmpeg, которая включает фильтры и работу с фоном? Существует команда, которая включает фильтры и наложение фонового изображения. Как ее трансформировать с использованием пакета npm `fluent-ffmpeg`?
  • 22 июля 2024 г. 14:33
Ответы на вопрос 2
Для переписания команды ffmpeg на Node.js с использованием пакета fluent-ffmpeg, вам потребуется создать новый экземпляр класса `fluent-ffmpeg` и использовать его методы для настройки команды ffmpeg. 

Пример перевода команды ffmpeg с фильтрами и наложением фонового изображения с использованием пакета fluent-ffmpeg:

```javascript
const ffmpeg = require('fluent-ffmpeg');

ffmpeg('input.mp4')
  .input('background.jpg') // добавляем фоновое изображение
  .complexFilter([
    'scale=1280:-1', // масштабирование
    'split[a][b]', // разделение потока на два
    '[a]setpts=PTS-STARTPTS, pad=iw*2:ih[bg];', // задаем временную отметку и создаем пустой фон
    '[bg][b]overlay=w', // наложение изображения на фон
  ])
  .output('output.mp4')
  .on('end', function() {
    console.log('Конвертация завершена');
  })
  .run();
```

Этот пример демонстрирует создание нового экземпляра класса `fluent-ffmpeg`, добавление входных файлов (`input.mp4` и `background.jpg`), применение фильтров с помощью метода `complexFilter`, задание выходного файла (`output.mp4`) и запуск конвертации с помощью метода `run()`. 

Это базовый пример, и вы можете настраивать команду ffmpeg дальше, добавляя различные фильтры и параметры в соответствии с вашими требованиями.
Года умеет порождать процессы, в том числе которые будут выполнять команды терминала. Порыскай в локументации
Похожие вопросы