node.js : comment pipe - youtube mp4 à mp3

Je veux convertir une url youtube en un fichier mp3. Actuellement, j'ai télécharger le mp4 à l'aide du nœud ytdl module, comme suit:

fs = require 'fs'
ytdl = require 'ytdl'

url = 'http://www.youtube.com/watch?v=v8bOTvg-iaU'
mp4 = './video.mp4'

ytdl(url).pipe(fs.createWriteStream(mp4))

Une fois que le téléchargement est terminé, j'convertir les mp4 en mp3 à l'aide de la courant-ffmpeg module, comme suit:

ffmpeg = require 'fluent-ffmpeg'

mp4 = './video.mp4'
mp3 = './audio.mp3'

proc = new ffmpeg({source:mp4})
proc.setFfmpegPath('/Applications/ffmpeg')
proc.saveToFile(mp3, (stdout, stderr)->
            return console.log stderr if err?
            return console.log 'done'
        )

Je ne veux pas avoir à enregistrer la totalité de la mp4 avant de commencer la conversion de mp3. Comment puis-je le tuyaux mp4 en proc de sorte qu'il effectue la conversion qu'il reçoit la mp4 morceaux?

vous pouvez également ytdl(url,{filter: 'audioonly'}), alors il vous donnera un fichier audio avec des tampons de données et vous pouvez les enregistrer en mp3 version.

OriginalL'auteur tldr | 2013-08-11