# 流媒体网站录制 / 下载开源项目对比报告

> **类型**: GitHub 开源项目调研
> **数据来源**: GitHub Search API + Repositories API（未认证公开接口）
> **快照日期**: 2026-09-18
> **统计仓库数**: 16（其中 15 个成功获取完整指标，1 个因 DMCA 封禁无法获取）

## 摘要 / 核心结论

- 本次对比聚焦"流媒体网站录制 / 下载"领域 16 个代表性开源项目，覆盖通用视频下载器、直播流录制、Bilibili 等中文站点专用工具、m3u8/HLS 切片下载器，以及 Web 前端套壳几大类别。
- 生态格局呈现"双寡头 + 垂直细分"：`yt-dlp/yt-dlp`（约 19.2 万 stars）与 `ytdl-org/youtube-dl`（约 14.1 万 stars）占据绝对主导，前者活跃、后者已基本停滞。
- 活跃度两极分化明显：仅 `yt-dlp`、`streamlink`、`metube`、`mediago` 四个项目处于 A 级（最近提交 7 天内）；多个曾经流行的项目（`youtube-dl`、`N_m3u8DL-CLI`、`alltube`、`youtube-dl-gui`、`ytarchive`）已进入 D 级（超过半年无提交或已归档）。
- [重要] `KurtBestor/Hitomi-Downloader` 于 2026-03-30 因 DMCA 投诉（fakku）被 GitHub 封禁，API 返回 HTTP 451，无法获取权威指标，需注意其长期可用性风险。

## 方法论与指标定义

- **数据来源**: 全部指标取自 GitHub 公开 REST API，未认证访问。
  - 候选项目发现：GitHub Search API，8 组查询（stream downloader / m3u8 downloader / live stream recorder / video downloader / bilibili download / youtube download / stream ripper / DRM downloader），`sort=stars&order=desc&per_page=100`。
  - 精确指标：对种子清单中每个 `full_name` 调 `GET /repos/{full_name}` 获取权威值。
  - 深度指标：对按 stars 排序后的 Top 15 个仓库调 `GET /repos/{full_name}/releases?per_page=100` 取最新 release 日期与数量；另对 Top 5 仓库解析 contributors 分页 Link 头估算 contributor 数。
- **活跃度评级**（依据 `pushed_at` 距今 X 天，今日 = 2026-09-18）：
  - A：X <= 7 天（极活跃）
  - B：7 < X <= 30 天（活跃）
  - C：30 < X <= 180 天（一般 / 缓慢维护）
  - D：X > 180 天，或仓库已 `archived`（停滞 / 弃坑）
- [注意] GitHub 当前 `watchers_count` 与 `stargazers_count` 返回相同值（平台合并后行为），因此下表中 Watchers 与 Stars 一致，实际"订阅者"意义有限。
- [注意] `releases?per_page=100` 对超过 100 个 release 的仓库返回满 100 条，表中标注 `100+` 表示实际数量更多。

## 总览对比表

按 Stars 降序排列：

| 项目 | Stars | Forks | Watchers | Open Issues | 语言 | License | 最近提交 | 距今天数 | 最新 Release | Release 数 | 活跃度 |
|------|------:|------:|---------:|------------:|------|---------|----------|---------:|--------------|-----------:|-------|
| [yt-dlp/yt-dlp](https://github.com/yt-dlp/yt-dlp) | 191802 | 16650 | 191802 | 2657 | Python | Unlicense | 2026-09-16 | 2 | 2026-08-19 | 100+ | A |
| [ytdl-org/youtube-dl](https://github.com/ytdl-org/youtube-dl) | 141263 | 10658 | 141263 | 4126 | Python | Unlicense | 2026-02-19 | 211 | 2021-12-16 | 100+ | D |
| [soimort/you-get](https://github.com/soimort/you-get) | 56876 | 9695 | 56876 | 386 | Python | NOASSERTION | 2026-08-24 | 25 | 2025-01-04 | 100+ | B |
| [iawia002/lux](https://github.com/iawia002/lux) | 31687 | 3313 | 31687 | 545 | Go | MIT | 2026-03-29 | 173 | 2024-05-06 | 86 | C |
| [KurtBestor/Hitomi-Downloader](https://github.com/KurtBestor/Hitomi-Downloader) | 不可用 | - | - | - | - | - | - | - | - | - | D（DMCA 封禁） |
| [nilaoda/N_m3u8DL-CLI](https://github.com/nilaoda/N_m3u8DL-CLI) | 16097 | 2287 | 16097 | 258 | C# | MIT | 2023-06-03 | 1203 | 2022-07-11 | 84 | D |
| [alexta69/metube](https://github.com/alexta69/metube) | 14776 | 1087 | 14776 | 10 | Python | AGPL-3.0 | 2026-09-15 | 3 | 2026-09-15 | 81 | A |
| [nilaoda/BBDown](https://github.com/nilaoda/BBDown) | 13881 | 1735 | 13881 | 245 | C# | MIT | 2026-05-14 | 127 | 2024-08-14 | 43 | D（已归档） |
| [streamlink/streamlink](https://github.com/streamlink/streamlink) | 11766 | 1199 | 11766 | 70 | Python | BSD-2-Clause | 2026-09-16 | 2 | 2026-09-16 | 100+ | A |
| [mediago-dev/mediago](https://github.com/mediago-dev/mediago) | 9234 | 822 | 9234 | 76 | TypeScript | MIT | 2026-09-11 | 7 | 2026-04-21 | 19 | A |
| [nilaoda/N_m3u8DL-RE](https://github.com/nilaoda/N_m3u8DL-RE) | 8764 | 872 | 8764 | 428 | C# | MIT | 2026-07-03 | 77 | 2026-06-28 | 22 | C |
| [tubearchivist/tubearchivist](https://github.com/tubearchivist/tubearchivist) | 8451 | 421 | 8451 | 24 | Python | GPL-3.0 | 2026-08-28 | 21 | 2026-08-25 | 56 | B |
| [Rudloff/alltube](https://github.com/Rudloff/alltube) | 2967 | 566 | 2967 | 43 | PHP | GPL-3.0 | 2023-04-22 | 1245 | 2023-04-22 | 60 | D（已归档） |
| [oleksis/youtube-dl-gui](https://github.com/oleksis/youtube-dl-gui) | 2104 | 137 | 2104 | 88 | Python | Unlicense | 2025-09-13 | 370 | 2023-02-24 | 20 | D |
| [Kethsar/ytarchive](https://github.com/Kethsar/ytarchive) | 1696 | 130 | 1696 | 55 | Go | MIT | 2025-12-19 | 273 | 2025-12-19 | 4 | D |
| [acgnhiki/blrec](https://github.com/acgnhiki/blrec) | 685 | 64 | 685 | 131 | Python | GPL-3.0 | 2025-06-03 | 472 | 2025-06-03 | 41 | D（已归档） |

[注意] `KurtBestor/Hitomi-Downloader` 因 DMCA 封禁无法通过 API 获取任何指标，按历史 star 规模（约 2 万级，未核验）本应排在第 5 位附近，表中单独标注。

## 分项目简介

1. **[yt-dlp/yt-dlp](https://github.com/yt-dlp/yt-dlp)**：当前事实标准，`youtube-dl` 的活跃后继分支，支持 1000+ 站点，功能丰富（字幕、缩略图、音频提取、cookies、后处理）。维护极活跃（2 天前提交，contributor 约 376 人），适用于几乎一切视频/音频抓取脚本与自动化场景。
2. **[ytdl-org/youtube-dl](https://github.com/ytdl-org/youtube-dl)**：始祖级项目，曾被广泛使用，但主仓库已 211 天无提交、最近 release 停留在 2021-12-16，仅靠社区补丁缓慢推进。新项目不应再选它，除非有历史遗留依赖。
3. **[soimort/you-get](https://github.com/soimort/you-get)**：Python 轻量下载器，中文站点（Bilibili、爱奇艺、优酷等）支持曾是亮点，25 天前仍有提交，但 release 已停更一年半，处于"半维护"状态。
4. **[iawia002/lux](https://github.com/iawia002/lux)**：Go 编写的快速视频下载库 + CLI，曾用名 annie，单二进制部署方便。173 天前提交，维护节奏放缓，适合想要 Go 生态库的场景。
5. **[nilaoda/N_m3u8DL-CLI](https://github.com/nilaoda/N_m3u8DL-CLI)**：经典 .NET m3u8/HLS/DASH 命令行下载器，支持 AES-128-CBC 解密与多线程。已 3 年多无提交，作者精力转移到 N_m3u8DL-RE，功能需求建议改用 RE 版。
6. **[alexta69/metube](https://github.com/alexta69/metube)**：自托管的 yt-dlp Web 前端，Docker 一键部署，浏览器粘贴链接即下载。维护非常活跃（3 天前提交），适合家庭 NAS 场景。
7. **[nilaoda/BBDown](https://github.com/nilaoda/BBDown)**：命令行 Bilibili 下载器，支持多 P、清晰度选择、弹幕/字幕、登录 cookies。作者已归档仓库（2026-05 后停更），B 站规则变化快，使用前需确认仍能工作。
8. **[streamlink/streamlink](https://github.com/streamlink/streamlink)**：直播流领域的事实标准，把 Twitch/YouTube/Bilibili 等直播流管道化到 VLC/mpv 等播放器，兼作录制。维护极活跃（2 天前提交），是直播录制/观看的首选底层工具。
9. **[mediago-dev/mediago](https://github.com/mediago-dev/mediago)**：跨平台桌面（Electron/TypeScript）视频下载器，可嗅探抓取 m3u8/HLS 流，支持 Bilibili、YouTube 等，提供 Docker 版。7 天前提交（A 级），是"开箱即用的带 GUI 抓流工具"中最活跃者之一。注：仓库已从 `caorushizi/mediago` 迁移到 `mediago-dev/mediago`。
10. **[nilaoda/N_m3u8DL-RE](https://github.com/nilaoda/N_m3u8DL-RE)**：N_m3u8DL-CLI 的现代化重构版，跨平台，专注 MPD/M3U8/ISM 流下载与解密。77 天前提交（C 级），是 m3u8/MPD 专项下载的当前首选。
11. **[tubearchivist/tubearchivist](https://github.com/tubearchivist/tubearchivist)**：自托管 YouTube 媒体服务器，订阅频道后自动归档到本地并带检索界面。21 天前提交（B 级），适合"自建 YouTube 私人档案馆"的长期运行场景。
12. **[Rudloff/alltube](https://github.com/Rudloff/alltube)**：PHP 写的 youtube-dl Web GUI。已归档、1245 天无提交，基本可视为弃坑，功能同类建议换 metube。
13. **[oleksis/youtube-dl-gui](https://github.com/oleksis/youtube-dl-gui)**：wxPython 编写的 youtube-dl 桌面前端，370 天无提交且依赖已停滞的 youtube-dl，不推荐新用户选用。
14. **[Kethsar/ytarchive](https://github.com/Kethsar/ytarchive)**：Go 编写的 YouTube 直播录制器，可边播边录并自动补全重播。273 天无提交，YouTube 直播接口变动后维护滞后，属于"小众但曾好用"的直播备份工具。
15. **[acgnhiki/blrec](https://github.com/acgnhiki/blrec)**：Bilibili 直播录制器（API + Web UI），作者已明确声明不再维护，迁移至 `oneliverec/OneLiveRec`，仓库已归档，不建议新部署。

## 分类归纳

- **通用视频下载器（CLI）**: `yt-dlp/yt-dlp`、`ytdl-org/youtube-dl`、`soimort/you-get`、`iawia002/lux`
- **直播流录制 / 管道化**: `streamlink/streamlink`、`Kethsar/ytarchive`、`acgnhiki/blrec`（B 站直播）
- **中文站点专用**: `nilaoda/BBDown`（Bilibili）、`mediago-dev/mediago`（Bilibili/YouTube/多平台抓流）
- **m3u8 / 流切片专用**: `nilaoda/N_m3u8DL-RE`、`nilaoda/N_m3u8DL-CLI`
- **Web 前端套壳 / 自托管服务**: `alexta69/metube`、`tubearchivist/tubearchivist`、`Rudloff/alltube`
- **桌面 GUI 套壳**: `oleksis/youtube-dl-gui`、`mediago-dev/mediago`（现代替代）、`KurtBestor/Hitomi-Downloader`（DMCA 封禁）

[补充发现] 搜索过程中还发现了若干未纳入种子清单的高 star 相关项目，可作选型参考：`imputnet/cobalt`（约 4.3 万 stars，Web 视频/音频下载服务）、`JunkFood02/Seal`（Android 端 yt-dlp 前端）、`spotDL/spotify-downloader`、`Evil0ctal/Douyin_TikTok_Download_API`、`putyy/res-downloader`、`Tyrrrz/YoutubeDownloader`、`tonhowtf/omniget`、`deniscerri/ytdlnis`。

## 活跃度与健康度综合分析

- **第一梯队（A 级，7 天内提交）**: `yt-dlp`（2 天）、`streamlink`（2 天）、`metube`（3 天）、`mediago`（7 天）。这四个项目提交频繁、issue 响应及时，是当前生态中可持续依赖的主力。
- **第二梯队（B 级）**: `you-get`（25 天）、`tubearchivist`（21 天）。仍在维护，但节奏放缓。
- **第三梯队（C 级）**: `lux`（173 天）、`N_m3u8DL-RE`（77 天）。维护缓慢但仍可接受，需关注长期走向。
- **第四梯队（D 级 / 已归档）**: `youtube-dl`（211 天无提交但未归档）、`N_m3u8DL-CLI`、`BBDown`（已归档）、`alltube`（已归档）、`youtube-dl-gui`、`ytarchive`、`blrec`（已归档）。这些项目要么被后继项目取代，要么作者明确弃坑，选型时应回避或只作历史参考。
- [重要] **健康度风险信号**：`BBDown`、`blrec` 已 `archived`；`Hitomi-Downloader` 遭 DMCA 封禁。凡依赖平台私有接口的下载/录制工具，都会随目标站点反爬与规则更新快速腐化，活跃度是选型的硬指标。
- contributor 数（Top 5，API 分页估算）：`ytdl-org/youtube-dl` 约 384、`yt-dlp/yt-dlp` 约 376、`streamlink/streamlink` 约 288、`soimort/you-get` 约 222、`iawia002/lux` 约 107。

## 选型推荐

- [推荐] **通用视频/音频下载（脚本或 CLI）**: 首选 `yt-dlp/yt-dlp`。理由：站点覆盖最广、维护最活跃、社区最大，且是 metube/Seal 等大量工具的底层引擎。
- [推荐] **直播流观看与录制**: 首选 `streamlink/streamlink`。理由：活跃度 A、专注直播、与 mpv/VLC 生态深度集成，覆盖 Twitch/YouTube/Bilibili 等主流平台。
- [推荐] **家庭 NAS 自托管"粘贴即下"**: 首选 `alexta69/metube`。理由：Docker 一键部署、维护极活跃、依赖 yt-dlp 能力。
- [推荐] **Bilibili 视频/直播下载**: 视场景二选一——命令行批量用 `nilaoda/BBDown`（注意已归档、需自测可用性），带 GUI 多平台抓流用 `mediago-dev/mediago`（A 级活跃，B 站 + m3u8 嗅探一体）。
- [推荐] **m3u8/MPD/DASH 切片下载与解密**: 首选 `nilaoda/N_m3u8DL-RE`。理由：作者在 RE 版持续投入，跨平台、支持加密与多线程，取代停更的 CLI 版。
- [推荐] **自建 YouTube 私人档案馆**: 首选 `tubearchivist/tubearchivist`。理由：专为此场景设计，自动归档 + 检索，B 级维护。
- [不推荐] 新项目选 `youtube-dl`（停滞）、`alltube`（弃坑）、`oleksis/youtube-dl-gui`（依赖停滞上游）、`ytarchive`（维护滞后）、`blrec`（作者已迁移至 OneLiveRec）。
- [提示] 若目标站点是短视频平台（抖音/TikTok/快手/小红书），种子清单外可关注 `Evil0ctal/Douyin_TikTok_Download_API` 与 `putyy/res-downloader`。

## 数据局限说明

- **未认证限额**: GitHub 未认证 API 存在限流（Search 10 次/分钟、核心接口 60 次/小时），本次调研共约 48 次 API 请求，未触发限流，但无法批量拉取全部候选项目的完整 release/contributor 数据。
- **快照性质**: 所有指标（stars/forks/issues/pushed_at/release）均为 2026-09-18 当天的瞬时快照，随时间推移会变化，活跃度评级仅反映快照时刻。
- **Release 数截断**: `releases?per_page=100` 上限 100，`yt-dlp`、`youtube-dl`、`you-get`、`streamlink` 实际 release 数更多（表中标 100+）。
- **contributor 数仅覆盖 Top 5**: 通过分页 Link 头估算，其余仓库未采集。
- **DMCA 封禁**: `KurtBestor/Hitomi-Downloader` 于 2026-03-30 被 GitHub 封禁（HTTP 451），无法获取权威指标，其对比行缺失。
- **watchers 失真**: GitHub 已将 `watchers_count` 并入 `stargazers_count`，二者数值相同，Watchers 列参考意义有限。
- **License 字段**: `soimort/you-get` 的 API 返回 `NOASSERTION`（GitHub 未能自动识别 LICENSE 内容），未作二次人工核验。
