Skip to content
yxxbcPublic

About

现代化的开源视频下载工具 — 一键下载全网无水印高清视频,yt-dlp图形化界面

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

519 stars

Watchers

2 watching

Forks

Latest commit

 

History

243 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DownVid Logo

DownVid

把喜欢的视频,轻松保存到本地。

开源 · 跨平台 · 简洁易用

DownVid 桌面应用界面预览

Downloads Latest Release GitHub Stars MIT License

下载 DownVid · 反馈问题 · 安装指南


Important

本项目是 yt-dlp 的图形界面封装,不包含破解或绕过技术保护措施的代码。请遵守当地法律法规、平台规则及内容版权要求,使用者需自行承担使用责任。

目录

项目简介

DownVid 是一款面向 macOS、Windows 和 Linux 的开源桌面视频下载工具。它使用 yt-dlp 作为下载引擎,并通过简洁的图形界面降低使用门槛。

项目仍在积极开发中。遇到问题或有功能建议,欢迎提交 Issue。

功能特性

功能 说明
多平台解析 基于 yt-dlp 支持 1000+ 个视频和音频网站;抖音、快手另有专属解析器
清晰度与格式 支持 360P 至 4K、仅音频(MP3)、仅字幕(SRT)及 YouTube 多音轨选择
下载管理 队列管理、暂停、恢复、重试、下载进度、速度、剩余时间与文件大小
分段下载 直链支持多连接分段下载;HLS/DASH 支持分片并发下载
登录内容 支持读取已安装浏览器的登录状态,也可以手动导入 cookies.txt
运行依赖管理 自动识别系统中的 yt-dlp / FFmpeg;缺失时可以在应用内下载
下载历史 自动保存最近 100 条下载记录
自动更新 通过 GitHub Releases 更新;macOS 使用应用内校验与替换流程

支持的网站

DownVid 通过 yt-dlp 支持 1000+ 个视频和音频网站。以下是常见平台示例:

国内平台 国际平台
抖音、小红书、快手、西瓜视频、哔哩哔哩(B 站) YouTube、TikTok、Instagram、X(Twitter)、Facebook

其他网站请参考 yt-dlp 支持的网站列表。平台可用性可能随网站变化而变化。

下载安装

前往 GitHub Releases 下载最新版本,并按操作系统选择对应安装包。

平台 安装包
macOS .dmg(ARM64 / x64)
Windows .exe(x64)
Linux .AppImage / .deb(x64 / ARM64,具体产物以 Release 页面为准)

安装步骤与常见问题见 安装指南。

从源码构建

环境要求

  • Node.js ≥ 22
  • pnpm ≥ 8
  • Go ≥ 1.24

yt-dlp 和 FFmpeg 无需预先安装。运行时会优先探测并复用系统已有版本;缺失时可在应用内下载安装。

构建步骤

git clone https://github.com/yxxbc/downvid.git
cd downvid
pnpm install
pnpm dev       # 开发模式
pnpm build     # 构建当前平台安装包

更多平台构建命令、依赖说明及排错步骤请查看 从源码构建指南。

文档

文档 内容
安装指南 macOS、Windows、Linux 的安装说明
从源码构建 开发环境、依赖与构建流程
故障排除 常见错误与排查步骤
常见问题(FAQ) 使用问题与解答
架构说明 进程结构、IPC 通信与下载流程
项目结构 目录说明与代码维护位置
仓库规范 分支、提交、Issue 与 PR 规范
发布流程 版本与发布产物维护
贡献指南 如何参与项目开发
安全政策 安全问题的报告方式与处理范围
贡献者行为准则 社区参与规范

技术栈与架构

技术栈

技术 用途
Electron 跨平台桌面应用框架
Vue 3 用户界面
TypeScript 类型安全
Tailwind CSS 界面样式
Vite 开发与构建
Pinia 状态管理
Go 探测与安装 yt-dlp / FFmpeg 的依赖边车
yt-dlp 视频与音频解析引擎
FFmpeg 音视频合并与转码
Vitest 纯逻辑单元测试

架构概览

flowchart LR
    UI["渲染进程<br/>Vue 3"] <-->|"IPC"| Main["主进程<br/>Electron / Node.js"]
    Main <-->|"NDJSON"| Sidecar["Go 依赖边车"]
    Main --> Engine["yt-dlp"]
    Main --> Media["FFmpeg"]
Loading

交互式架构图及详细说明见 架构文档。

项目结构

目录 作用
backend/ Go 依赖边车,探测并安装运行依赖
electron/ 主进程、IPC、下载实现、平台解析器与更新逻辑
src/ Vue 3 渲染进程与界面
shared/ 仓库坐标与外部链接的共享定义
tests/ 自动化单元测试
scripts/ 构建、清单生成及校验脚本
docs/ 安装、构建、架构、维护与发布文档

完整目录说明见 项目结构文档。

常见问题

提示缺少 yt-dlp 或 FFmpeg,怎么办?

安装包不会预置这两个工具。应用启动时会先探测系统中的可用版本;若未找到,可在提示窗口中下载安装,或前往「设置 → 运行依赖」管理。

macOS 提示无法验证开发者,怎么办?

首次打开时,可在 Finder 中右键点击应用并选择「打开」,或前往「系统设置 → 隐私与安全性」确认打开。若仍遇到问题,请参考 故障排除指南。

某些视频下载失败,怎么办?

部分网站要求用户登录。请确认你有权访问该内容,并尝试在设置中读取浏览器登录状态或导入 cookies.txt。网站变更也可能影响解析成功率。

更多问题见 FAQ 与 故障排除指南。

参与贡献

欢迎提交 Issue、改进文档或发起 Pull Request。

提交前建议运行:

pnpm vue-tsc --noEmit
pnpm test
pnpm lint:ipc

更多流程请查看 贡献指南 和 仓库规范。

Star History

Star History Chart

开源协议与致谢

DownVid 基于 MIT License 开源。

DownVid 最初基于 Videdown 开发,之后经过了大量修改、重构与功能扩展。感谢原作者 cshuangyy 的开源工作;原项目的版权与许可声明保留在 LICENSE 中。

感谢社区贡献者与项目依赖的维护者:

支持项目

如果 DownVid 对你有帮助,欢迎请作者喝杯咖啡。微信赞赏码:

展开赞赏码 微信赞赏码

DownVid · Made with care by yxxbc

About

现代化的开源视频下载工具 — 一键下载全网无水印高清视频,yt-dlp图形化界面

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

519 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages