如果平时使用 yt-dlp 下载 B站、YouTube 或其他平台的视频,最大的门槛通常不是下载本身,而是需要记命令、管理下载任务以及查看文件状态。

Vidom 做的事情,就是在 yt-dlp 外面增加一个 Web 管理界面。

部署完成以后,可以直接通过浏览器添加视频地址,并统一查看下载进度、暂停或继续任务、管理历史记录,不需要每次都进入终端输入 yt-dlp 命令。

目前项目支持 YouTube、哔哩哔哩、Vimeo、X、TikTok、小红书、Instagram,以及普通 HTTP 媒体直链。

视频下载管理器:支持 B站、YouTube 与 TikTok、小红书等 的自部署工具

Vidom 主要解决什么问题?

Vidom 本身并不是一个新的在线视频解析引擎。

它的核心下载能力仍然来自:

  • yt-dlp;
  • ffmpeg
  • 普通 HTTP 下载。

因此,可以把它理解成:

yt-dlp + 下载队列 + SQLite + Web 管理面板。

相比直接使用 yt-dlp 命令行,Vidom 更适合需要长期下载或者同时管理多个任务的场景。

例如一次加入多个视频以后,可以设置最大并发数,并在网页中查看:

  • 当前下载任务;

视频下载管理器:支持 B站、YouTube 与 TikTok、小红书等 的自部署工具

  • 下载百分比;* 实时速度;* 剩余时间;

视频下载管理器:支持 B站、YouTube 与 TikTok、小红书等 的自部署工具

  • 下载历史;* 成功与失败状态。

视频下载管理器:支持 B站、YouTube 与 TikTok、小红书等 的自部署工具

对于偶尔只下载一个视频的人来说,直接使用 yt-dlp 反而可能更加简单。

Vidom 支持哪些视频来源?

根据现有项目说明,目前内置支持:

来源 支持情况
YouTube 支持
哔哩哔哩 支持
Vimeo 支持
X / Twitter 支持
TikTok 支持
Instagram 支持
HTTP 媒体直链 支持

视频下载管理器:支持 B站、YouTube 与 TikTok、小红书等 的自部署工具

平台类视频主要交给 yt-dlp 处理。

普通文件直链则可以直接通过 HTTP 下载,并支持 Range 断点续传。

需要说明的是,支持某个平台,并不意味着该平台上的所有内容都可以下载。

会员视频、需要登录的资源、地区限制内容、DRM 内容以及平台主动限制访问的视频,都可能解析失败。

比直接使用 yt-dlp 多了什么?

Vidom 比较有价值的部分并不是“支持多少网站”,因为这些能力本身主要来自 yt-dlp,而是它增加了一层下载管理功能。

任务队列

可以限制同时运行的任务数量,目前提供:

1
1 / 2 / 3 / 5 / 10

默认同时下载 3 个任务。

对于网络带宽有限或者同时需要下载大量视频的设备,这比直接批量启动多个 yt-dlp 进程更加容易管理。

暂停、继续和重试

任务支持:

  • 暂停;
  • 恢复;
  • 取消;
  • 重试;
  • 删除。

恢复下载时会利用 yt-dlp 的断点续传能力,尽量从已经下载的位置继续,而不是重新下载整个文件。

实时进度

前端通过 SSE 接收任务状态,同时保留轮询作为兜底。

页面可以显示:

  • 下载百分比;
  • 下载速度;
  • 已下载大小;
  • 剩余时间。

服务重启后恢复任务

如果服务器意外重启,原来处于:

1
2
parsing
downloading

状态的任务,会重新进入等待队列。

已经完成的任务不会重新下载。

这对于把 Vidom 长期部署在 NAS、小服务器或者 VPS 上比较有意义。

下载历史和统计

Vidom 还提供 Dashboard 和下载历史。

可以查看:

  • 今日任务数量;
  • 累计下载量;
  • 成功率;
  • 不同平台占比;
  • 每日下载趋势。

历史记录支持关键词搜索、平台筛选以及按照时间或文件大小排序。

如果只是偶尔下载视频,这些功能意义有限;如果把它当作长期运行的下载中心,管理价值会明显一些。

Vidom 的技术结构

项目采用前后端分离结构,但生产环境可以由单个 Node.js 服务提供。

主要技术包括:

部分 技术
后端 Node.js 22+、Express、TypeScript
前端 React、TypeScript、Vite
UI Tailwind CSS v4
数据库 SQLite
视频解析 yt-dlp
音视频处理 ffmpeg
自动化测试 Playwright

数据库直接使用 Node.js 自带的 node:sqlite

视频下载管理器:支持 B站、YouTube 与 TikTok、小红书等 的自部署工具

因此如果按照原始项目设计运行,需要 Node.js 22 或更高版本

[Windows]本地部署

程序已经打包生成exe可执行文件,双击文件后就能直接使用,无需手动安装各种环境和依赖,做到开箱即用!

视频下载管理器:支持 B站、YouTube 与 TikTok、小红书等 的自部署工具 resource cover
PREVIEW / RAR/EXE SOFTWARE & TOOLS
SOFTWARE & TOOLS RESOURCE / CURATED BY US

视频下载管理器:支持 B站、YouTube 与 TikTok、小红书等 的自部署工具

Software & Tools RAR/EXE 96.8MNo password
ACCESS STATUS ONLINE / VERIFIED
NO PASSWORD
Download