fluent-ffmpeg не работает с net .Socket - PullRequest
0 голосов
/ 31 января 2020

Я работаю с модулями fluent-ffmpeg и ftp, чтобы получить метаданные / снимки экрана из фильмов, которые хранятся на FTP-сервере в NodeJS. Согласно документации ftp, функция client.get возвращает читаемый поток. Это не совсем неправильно, так как он возвращает объект Socket, который реализует Readable & Writable Stream. Однако дело в том, что fluent-ffmpeg не хочет принимать объект Socket. Запуск этого кода

client.get(file, (err, video) =>
{
    //video.pipe(fs.createWriteStream('./movie.mp4'))
    let command = new ffmpeg(video).inputFormat('mp4').output('./test.mp4')
    command.run()
})

Выдает эту ошибку:

ffmpeg завершился с кодом 1: pipe: 0: при обработке ввода обнаружены неверные данные

Тем не менее, сначала добавив video в fs.createWriteStream(path), а затем fs.createReadStream(path) отлично работает с ffmpeg.

...