Использование потока узла для загрузки видео с запросом и преобразования его с помощью avconv

#javascript #node.js #stream #streaming #avconv

#javascript #node.js #поток #потоковая передача #avconv

Вопрос:

Я пытаюсь лучше понять потоки узла и хочу сделать что-то простое :

Загрузите видео из Интернета и конвертируйте его в mp3.

Для выполнения этого я использую два следующих модуля :

  • запрос
  • avconv

Согласно документации, оба модуля поддерживают потоки. Вот что я пытаюсь сделать :

 var avconv = require('avconv');
var request = require('request');
var params = ['-i', 'pipe:0' ,'-vn','-c:a','libmp3lame','-q:a','2','output.mp3'];

var video = request.get([videoURL.mp4])

var convstream = avconv(params);

video.pipe(convstream)
  

К сожалению, я получаю эту ошибку :

 node_modules/avconv/avconv.js:142
            source.unpipe(stream);
                   ^
TypeError: Object #<Request> has no method 'unpipe'
  

Кажется, что у объекта запроса нет метода unpipe! Это очень странно, потому что, согласно документации по запросу, кажется возможным передавать запрос в файл, так почему бы не в avconv?

Может ли кто-нибудь указать мне правильное направление? Не следует ли мне использовать потоки для выполнения этой задачи?

Комментарии:

1. node -v ? Также версии модулей.