Nodejs 实现的 youtube-dl WebUI,支持解析 youtube 视频和 Bilibili 视频,支持使用 ffmpeg 转码 mp4/avi/webm/flv,支持字幕下载
实际使用过程中发现转码时间比较漫长,不如直接下载 mkv 格式视频
下文将展示如何在 Debian 10 下搭建 Youtube-dl-REST
环境
- Debian 10
参考
步骤
安装环境
需要 Nodejs 14、youtube-dl 以及 ffmpeg
Nodejs 14
curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - apt-get install -y nodejs
ffmpeg
直接通过包管理安装
apt install ffmpeg
youtube-dl
在官网下载
wget https://youtube-dl.org/downloads/latest/youtube-dl chmod +x ./youtube-dl mv youtube-dl /usr/local/bin # 测试是否安装成功 youtube-dl --version
搭建 YouTube-dl-REST
获取 YouTube-dl-REST
- 克隆 repo
git clone https://github.com/develon2015/Youtube-dl-REST.git
- 安装 Node 依赖包
cd Youtube-dl-REST npm install
修改配置文件
打开项目根目录的 config.json,删除 mode 的值,如下图
如果不修改 mode 会开启演示模式,演示模式下无法转码,只能下载 mkv 格式视频
也可以通过修改 port 来改变监听端口
注册系统服务
这里使用系统服务来运行 YouTube-dl-REST
在 /etc/systemd/system 下新建服务文件 youtube-dl-rest.service,写入以下内容
[Unit] Description=youtube-dl-rest Wants=network-online.target After=network-online.target [Service] WorkingDirectory=/root/Youtube-dl-REST ExecStart=/usr/bin/npm start [Install] WantedBy=multi-user.target
开启服务
systemctl start youtube-dl-rest.service systemctl status youtube-dl-rest.service
设置开机启动
systemctl enable youtube-dl-rest.serice
效果