MyTube:开源视频下载与本地播放管理平台(支持 YouTube/Bilibili/yt-dlp)

MyTube简介

MyTube 是一款开源的视频下载与本地播放管理应用,面向视频收藏爱好者与 NAS 用户。

基于 yt-dlp 的广泛兼容能力,可从 YouTube、Bilibili 等平台获取视频;

支持将缩略图与元数据本地保存,按收藏夹归档,配套自定义播放器带来顺畅的离线观看体验。提供在线演示(只读)与完整源码,便于快速评估与自建。

适用人群与场景

  • 视频收藏与归档:将分散在各平台的内容集中保存到本地库,统一管理与检索。
  • NAS 与离线播放:在家庭或团队内搭建私有库,低带宽环境仍可流畅观看。
  • 创作者工作流:素材采集、分集管理、评分与标签标注,提升整理效率。
  • 多语言与跨终端:桌面与移动端皆可使用,界面对暗色主题友好。

下载与管理

  • 视频下载:输入 URL 即可下载,支持 YouTube、Bilibili 与 yt-dlp 兼容源(微博/小红书/x.com 等实际可用性依平台策略而定)。
  • 并行与队列:可同时追踪多个任务进度,并设置并发上限,平衡带宽与速度。
  • Bilibili 增强:支持单视频、多 P、合集/系列整包下载。
  • 本地库与缩略图:自动保存封面与元数据,浏览体验更直观。
  • 分页与搜索:支持大规模视频分页浏览,提供本地检索与在线搜索入口。
  • 收藏夹与视图切换:自定义收藏夹,首页在“收藏夹视图/视频视图”间切换。
  • 评分系统:5 星打分,标注优先级与观看价值。
  • 临时文件清理:在设置中一键清理临时下载文件,节省空间。

播放与体验

  • 定制播放器:播放/暂停、循环、快进/快退、全屏、调光等常用控制。
  • 现代化 UI:响应式界面,玻璃拟态视觉,支持明/暗主题平滑切换。
  • 移动端优化:更友好的标签菜单与小屏布局。
  • 登录保护:密码登录页保护私有实例。
  • 国际化 I18N:内置英语、中文、西语、法语、德语、日语、韩语、阿拉伯语、葡语等。

部署与快速开始

环境要求

  • Node.js ≥ v14
  • npm ≥ v6
  • Docker(可选,用于容器化部署)

安装步骤(示例)

# 克隆仓库
git clone <repository-url>
cd mytube

# 一键安装前后端依赖
npm run install:all
# 或分别安装
npm install
cd frontend && npm install
cd ../backend && npm install

启动与常用脚本

# 开发模式(前后端联动)
npm run dev

# 生产模式启动
npm run start

# 构建前端
npm run build

# 代码检查与修复(前端)
npm run lint
npm run lint:fix

访问地址

  • 前端:http://localhost:5556
  • 后端 API:http://localhost:5551

演示地址:https://mytube-demo.vercel.app/

源码地址:https://github.com/franklioxygen/MyTube

留下评论