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
Vous devez vous connecter pour publier un commentaire.
Au lieu de passer l'emplacement de fichier mp4, passer dans le ytdl flux de la source, comme suit:
la mp4 vous est envoyé par un ruisseau, youtube je doute laissez vous demande juste le sepreate mp3.. vous avez dl le tout dans d'autres œuvres
OriginalL'auteur tldr
C'est une vieille question, mais peut aider quelqu'un dans le futur - je suis tombé sur moi-même lors de la recherche d'une solution similaire pour télécharger un vid youtube en mp3 sans avoir à enregistrer le fichier sur le serveur. En gros, j'ai installés sur la tuyauterie de la conversion directement à la réponse, et travaille comme je l'avais espéré.
Initialement répondu à cette question dans un autre fil: ffmpeg mp3 streaming via node js
};
OriginalL'auteur lance fallon
Cela ne fonctionne pas pour moi. Le Code ci-dessous fonctionne si j'ai mis un local .fichier mp4, mais à l'aide de flux n'est pas.
qu'est-ce que l'utilisation de flux dans le bloc de code ci-dessus
OriginalL'auteur Tim