react oficial conversor node.js ffmpeg node-streams fluent-ffmpeg

node.js - conversor - ffmpeg oficial



ffmpeg mp3 streaming a través del nodo js (1)

var fs = require(''fs''); var child = require(''child_process''); var http=require(''http'') var input_file = fs.createReadStream(''./remo.mp3''); http.createServer(function (req,res) { var args = [''-ss'',120, ''-i'', ''remo.mp3'', ''-f'',''mp3'', ''pipe:1'' // Output on stdout ]; var trans_proc = child.spawn(''ffmpeg'', args); res.writeHead(200, { ''Content-Type'': ''audio/mpeg'' }); trans_proc.stdout.pipe(res) trans_proc.stderr.on(''data'',function (err) { console.log(err.toString()); }) }).listen(2000)

Estoy tratando de cortar el mp3 y la transmisión al navegador, pero en el navegador muestra el archivo dañado


No puedo decir si estás preguntando sobre la descarga de un video de Youtube como un nodo que usa mp3, pero este hilo apareció en la parte superior de Google cuando estaba investigando eso. Entonces, si no, tal vez pueda apuntarlo en la dirección correcta o ayudar a alguien en el futuro ... Mods: lo siento si no estoy haciendo esto bien.

Referencia adicional de

Pero estoy usando el siguiente código para descargar un youtube vid como mp3 (descargar youtube vid / convert to mp3 / download):

module.exports.toMp3 = function(req, res, next){ var id = req.params.id; // extra param from front end var title = req.params.title; // extra param from front end var url = ''https://www.youtube.com/watch?v='' + id; var stream = youtubedl(url); //include youtbedl ... var youtubedl = require(''ytdl''); //set response headers res.setHeader(''Content-disposition'', ''attachment; filename='' + title + ''.mp3''); res.setHeader(''Content-type'', ''audio/mpeg''); //set stream for conversion var proc = new ffmpeg({source: stream}); //currently have ffmpeg stored directly on the server, and ffmpegLocation is the path to its location... perhaps not ideal, but what I''m currently settled on. And then sending output directly to response. proc.setFfmpegPath(ffmpegLocation); proc.withAudioCodec(''libmp3lame'') .toFormat(''mp3'') .output(res) .run(); proc.on(''end'', function() { console.log(''finished''); });

};