我制作了一个可以从youtube链接的链接下载视频的api,但是我无法下载音频高于360p格式的视频。它仅下载视频,而没有音频。
有什么解决办法吗?
答案 0 :(得分:0)
通常1080p或更好的视频没有音频编码。音频必须单独下载并通过适当的编码库合并。 ffmpeg是使用最广泛的工具,有许多可用的Node.js模块。使用ytdl.getInfo返回的格式对象下载特定的流,以进行组合以适应您的需求。查看https://github.com/fent/node-ytdl-core/blob/master/example/ffmpeg.js上的示例。
答案 1 :(得分:0)
您可以指定视频质量
const video = ytdl('http://www.youtube.com/watch?v=e_RsG3HPpA0',{quality: 18});
video.on('progress', function(info) {
console.log('Download progress')
})
video.on('end', function(info) {
console.log('Download finish')
})
video.pipe(fs.createWriteStream('video.mp4'));
请通过this link
检查质量值选项