youtube url을 mp3 파일로 변환하고 싶습니다. 현재, 그래서 같이 노드의 ytdl 모듈을 사용하여 MP4 다운로드 : 다운로드가 완료node.js : 파이프하는 법 - youtube to mp3 to mp3
fs = require 'fs'
ytdl = require 'ytdl'
url = 'http://www.youtube.com/watch?v=v8bOTvg-iaU'
mp4 = './video.mp4'
ytdl(url).pipe(fs.createWriteStream(mp4))
되면, 정말처럼 유창-는 FFmpeg 모듈을 사용하여 MP3에 MP4 변환 :
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'
)
mp3 변환을 시작하기 전에 전체 mp4를 저장하고 싶지 않습니다. 어떻게 mp4를 proc으로 파이프하여 mp4 청크를 수신 할 때 변환을 수행합니까? 대신 MP4 파일의 위치를 전달
정확하게 이해하면 이것은 여전히 전체 mp4를 다운로드하지만 저장 및 변환하는 대신 다운로드/스트리밍하는 동안 변환합니다. 원본 mp4 파일이 80MB이고 결과 mp3가 6MB라면 80MB가 다운로드됩니다. –
mp4가 스트림을 통해 당신에게 전송됩니다, 내가 의심스럽게 sepreate mp3 스트림을 요청하게 할 것입니다 .. 당신은 다른 작품에서 모든 것을 dl해야만합니다. –