【问题标题】:How can i download high quality you tube video using ytdl-core package in nodejs如何使用节点 js 中的 ytdl-core 包下载高质量的 youtube 视频
【发布时间】:2022-06-17 22:17:13
【问题描述】:

我的代码 sn-p 如下:

const express = require('express');
const app = express();
const ytdl = require('ytdl-core');
const fs = require('fs')
var router = express.Router();
router.get('/', function (req, res, next) {
    console.log('rputer calld')
    let url = "https://youtu.be/nD_NDngrEl8";
    ytdl(url).pipe(fs.createWriteStream('./presentation/video.webm'));
    res.end();
})
app.use(router);
app.listen(2222, () => {
    console.log('app listingin on 2222')
})

我使用了快递服务器并放了一个 youtube URL,我想以高质量下载它。

【问题讨论】:

  • 天哪,又是一个盗用他人内容的应用程序。

标签: node.js youtube ytdl


【解决方案1】:

高质量的 YouTube 视频只是不包含声音。一般来说,你必须下载单独的视频和音频,然后像你说的那样混合这两个文件。

您希望在下载而不是在下载结束时实时混合这两个文件。

嗯,如果你提供匹配的视频和音频 URL,FFmpeg 可以做到这一点。格式代替下载的文件名,然后您可以将混合输出保存到文件、管道或将其流式传输到任何位置或任何位置。完成的时间会更长,但理论上您可以立即开始使用输出,就像在 YouTube 上观看一样。但是,我想问题是,为什么不在 YouTube 上观看呢?

一些例子:

带有流的FFmpeg: https://github.com/fent/node-ytdl-core/blob/master/example/ffmpeg.js

混合流: https://www.npmjs.com/package/ytdl-core-muxer

【讨论】:

    【解决方案2】:

    这是完美的下载视频 将 ./presentation/video.webm 更改为 video.mp4

    const express = require('express');
    const app = express();
    const ytdl = require('ytdl-core');
    const fs = require('fs')
    var router = express.Router();
    router.get('/', function (req, res, next) {
        console.log('rputer calld')
        let url = "https://youtu.be/nD_NDngrEl8";
        ytdl(url).pipe(fs.createWriteStream('video.mp4'));
        res.end();
    })
    app.use(router);
    app.listen(2222, () => {
        console.log('app listingin on 2222')
    })
    

    【讨论】:

      【解决方案3】:

      我不明白如何安装.. 我用窗户 java需要什么? 把这段代码放在哪里? 编辑器够吗? 保存为js?请?可执行程序?什么的

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-09-30
        • 2020-05-05
        • 1970-01-01
        • 1970-01-01
        • 2021-06-17
        • 2019-09-23
        • 2011-12-26
        相关资源
        最近更新 更多