MediaGo 3.5.0 介绍与选型指南

MediaGo 3.5.0 开源网页视频下载器的定位、架构、功能与同类量化选型对比,基于官方仓库与官网 2026-10-25 联网实查。

MediaGoMediaGo流媒体自托管2026/10/25

MediaGo 3.5.0 介绍与选型指南

目标:全面介绍开源网页视频下载器 MediaGo 的定位、架构、功能与生态,并给出与同类工具的量化选型对比。本文所有项目信息(版本、星数、发布记录、部署形态)均来自官方仓库与官网的联网实查,查询日期为 2026-10-25。

一、环境信息

本文为认知与选型篇,所有事实均于 2026-10-25 通过公开渠道联网实查取得,未依赖本地缓存或第三方转述:

  • 实查对象:MediaGo(GitHub 仓库 mediago-dev/mediago,原 caorushizi/mediago 仓库已 301 重定向至该组织仓库)
  • 最新稳定版:v3.5.0(2026-04-21 发布,官方 README 明确标注 "v3.5.0 (stable)")
  • 最新预发布版:3.6.0-beta.1(2026-10-21 发布,Windows 安装器修复等)
  • 社区数据:9.3k stars / 825 forks(shields.io 实时徽章,2026-10-25 取证)
  • 官方渠道:官网 mediago.torchstellar.com、文档站 downloader.caorushizi.cn、GitHub Releases、Discord 与 Reddit(r/MediaGo_Studio)
  • 服务器验证环境:Linux 服务器(amd64),MediaGo 服务端 v3.5.0,Web 端口 8899(本文引用的接口与目录均以该版本实测为准)

💡 技术拓展:MediaGo 这个名字在业界不止一个项目——本文所指是 GitHub 上的开源网页视频下载器 MediaGo(med iago,"media" + "go"),需与另外两个同名物区分:一是移动端流量测量工具 MediaGo(网络测速类项目),二是各类媒体播放器插件。选型时认准仓库地址与「视频下载器 + Web UI」定位即可。

二、软件概述

MediaGo 是一个跨平台的开源网页视频下载器,核心理念是「无需抓包」——内置媒体嗅探能力,用户把网页地址交给它,它自动发现页面里的视频资源(m3u8/HLS 流、mp4 直链、YouTube/Bilibili 等平台视频),选中后即可下载合并为本地视频文件。项目在 GitHub 上以 MIT 系开源许可发布,官方在 README 中明确声明「仅用于学习与研究目的,禁止商业或非法用途,下载内容的版权归属原作者,用户须在 24 小时内删除或获得授权」。

MediaGo 同时提供三种使用形态:

  • 桌面应用:Windows 安装版/便携版、macOS(Apple Silicon/Intel)、Linux(deb 包),基于 Electron 封装;
  • 服务端(Docker):面向服务器与 NAS 的无界面部署,单一目录挂载,局域网内任意设备通过浏览器访问 Web UI,这是自建「私有视频下载服务」的主推形态;
  • 开放 HTTP API:服务端与桌面端都暴露同一套 HTTP 接口,浏览器扩展、脚本与第三方应用均可编程调用。

版本节奏方面,v3.5.0 是当前稳定版(2026-04-21),官方在其更新要点中列出:浏览器扩展、yt-dlp 集成(1000+ 站点)、OpenClaw Skill(AI 助手下载)、开放 HTTP 接口、内置格式转换、Docker 部署简化(挂载一个目录即可)、后端重写带来更快启动与更低内存占用。此后社区以 beta 节奏推进 3.6.0(最新 3.6.0-beta.1,2026-10-21),主线更新集中在 Windows 安装器本地化、macOS 公证重试、意大利语翻译等打磨项。

三、核心架构

MediaGo v3.5.0 采用「前端 Web UI + Go 核心服务 + 多引擎下载器」的分层结构:

  • Web 前端:React + TypeScript + Vite + Tailwind CSS + shadcn/ui 构建,同时编译进桌面端(Electron 壳)与服务端(静态资源由 Go 服务托管,内置视频播放器页面);
  • Go 核心服务(mediago-core):v3.5.0 将后端用 Go 重写,承担任务队列、下载调度(并发 runner 上限可配)、配置存储、SQLite 数据库(mediago.db)、HTTP API 与 SSE 事件推送(/api/events);
  • 下载引擎层:核心服务按任务类型把实际下载工作分发给随附的引擎二进制,各引擎独立、互不影响——
引擎程序负责的任务类型
m3u8 下载器N_m3u8DL-REm3u8/HLS 流媒体(含 Master 列多码率解析、AES-128 解密)
直链下载器aria2cmp4 等直链文件多线程下载
YouTube 下载器yt-dlpYouTube、Twitter/X、Instagram、Reddit 等 1000+ 站点
Bilibili 下载器BBDown哔哩哔哩视频
mediago 下载器mediago(Go CLI,v0.2.1)HLS(m3u8)/DASH(mpd) 通用流(并发分片、AES-128、自动合并)
合并/转码ffmpeg分片合并、格式转换(含视频转 MP3 音频)
  • 数据与目录:服务端把配置(config.json)、数据库(mediago.db)、日志(logs/)、下载产物(downloads/)统一收在一个数据目录下,部署时挂载该目录即可完整持久化。

这套架构的意义在于:嗅探与解析交给各专业引擎,Go 核心只做调度与编排,Web UI 与 API 只做交互——因此各站点支持度随引擎生态独立演进(例如 yt-dlp 更新即可扩展站点),而 MediaGo 自身保持轻量。

四、功能特性

按官方 v3.5.0 发布说明与官网产品介绍,MediaGo 的功能清单如下(来源:GitHub README、官网 mediago.torchstellar.com,2026-10-25 实查):

  • 网页媒体嗅探:内置浏览器嗅探网页视频资源,从资源列表中选择下载,无需抓包、无需手动解析 m3u8 地址;
  • 浏览器扩展:Chrome/Edge 扩展,任意网站一键嗅探视频并发送到 MediaGo,工具栏徽标实时显示检测到的资源数;扩展随桌面应用捆绑分发,也可独立安装;
  • 多协议多站点下载:m3u8/HLS 流(支持 Master 列表多码率解析)、DASH(mpd)、mp4 直链、YouTube 等 1000+ 站点(yt-dlp)、Bilibili(BBDown)、直播流录制(live 模式);
  • 批量下载:批量模式每行一个 URL,可附带名称与目录分组,统一审查后一次建任务;
  • 任务队列与并发控制:任务进入队列,最大并发 runner 数可配置(默认 2),任务状态(downloading/success/failed/stopped)与百分比实时可见;
  • 直播流录制:支持直播流下载,可指定录制时长(HH:mm:ss)与播放列表刷新间隔;
  • 格式转换:下载完成后在应用内转换为其他格式或画质(如视频转 MP3 音频),无需另开 ffmpeg 命令行;
  • 资源提取(Source Extraction):对任意网页做媒体发现,逐条或批量创建下载任务;
  • 插件管理:下载插件集中管理、按需启停,支持本地文件导入扩展;
  • Web UI 与多端播放:服务端形态提供 Web 管理界面与内置视频播放器,手机、平板在同一 Wi-Fi 下可直接访问(服务端同时监听局域网地址);
  • 开放 HTTP API:创建任务、查询进度、管理列表的完整接口,浏览器扩展与第三方工具共用同一套 API;
  • OpenClaw Skill:AI 编程助手(Claude Code、Cursor 等)可通过安装 skill 直接下达「下载这个视频」的指令(npx clawhub@latest install mediago);
  • 多语言界面:英文、简体中文、意大利语。

五、快速开始(最小可用示例)

最快上手的路径是服务端一条命令部署(来源:官方 README「Docker 一键部署」节,2026-10-25 实查;完整部署流程与配置讲解见部署篇)。在装好 Docker 的 Linux 服务器上执行:

docker run -d --name mediago -p 8899:8899 -v /opt/mediago:/app/mediago caorushizi/mediago:3.5.0
# 官方 README 给出的一键部署命令:映射 Web 端口 8899,挂载单一数据目录 /app/mediago

⚠️ 上述为官方 Docker 部署命令,仅在「宿主机已安装 Docker」的前提下执行。不使用 Docker 的用户可下载桌面版(Windows/macOS/Linux deb)直接安装,或参考宝塔面板一键部署(面板应用商店内搜索 MediaGo)。

服务启动后,浏览器访问 http://<服务器IP>:8899 进入 Web UI,首次访问会进入初始化页面设置管理账号;随后在下载页粘贴视频页地址即可嗅探并创建下载任务。

官方镜像双渠道同步发布,按网络情况任选其一(同一镜像):

  • Docker Hub:caorushizi/mediago:3.5.0
  • GHCR:ghcr.io/caorushizi/mediago:3.5.0

支持 amd64 与 arm64 双架构,NAS(群晖、威联通、飞牛等)与树莓派类 ARM 设备均可部署。

六、适用场景与限制

适用场景(与官网「NAS 私有媒体库」定位一致):

  • 家庭 NAS 私有下载服务:服务器/NAS 上部署服务端,全家多设备浏览器访问,下载的视频集中存放、内置播放器直接观看;
  • 批量离线收藏:课程、直播回放、公开测试流等批量 URL 一次性入队,夜间挂机下载;
  • 自动化流水线:通过 HTTP API 把「下载 → 转码 → 归档」接进脚本或 CI,扩展与第三方工具共用接口;
  • AI 助手场景:Claude Code/Cursor 用户装 OpenClaw Skill 后用自然语言下发达下载指令。

限制与边界(官方 README 声明与实查结论):

  • 合规边界:官方明确仅限学习研究用途,禁止批量爬取、破坏平台服务、侵犯他人权益;下载内容 24 小时内删除或获得授权;
  • 站点支持度取决于引擎:受版权保护、需要登录/DRM 的内容不在支持范围;yt-dlp 类引擎对被墙站点需服务端配置代理;
  • 单机架构:任务调度为单实例内存队列(SQLite 持久化任务记录),无原生多节点集群形态;
  • 服务端随附引擎为固定版本:合并环节依赖随附 ffmpeg,个别 MPEG-TS 流在部分环境存在「任务显示成功但仅有分片、合并产物缺失」的已知现象,需在部署侧替换 ffmpeg 或手动合并兜底(详见部署篇与配置篇)。

七、同类选型对比

「网页视频下载」赛道的可选工具不少,但形态差异很大。下表把常见同类项按「部署形态 / 界面 / 协议覆盖 / 自动化能力 / 维护活跃度」量化对比(数据均于 2026-10-25 实查各自官方渠道取得;星数为 shields.io 徽章值):

项目形态界面协议/站点覆盖HTTP API社区活跃度(2026-10-25)许可
MediaGo 3.5.0桌面 + 服务端(Docker)+ Web UIWeb 图形界面 + 浏览器扩展m3u8/DASH/mp4 直链 + yt-dlp 1000+ 站点 + Bilibili + 直播录制有(完整)9.3k stars,稳定版 2026-04,beta 持续开源(README 附教育研究声明)
yt-dlp命令行工具无(CLI)1000+ 站点(自维护列表)无(需自行封装)极高(周更节奏)Unlicense
N_m3u8DL-RE命令行工具无(CLI)m3u8/DASH 专精(含加密流)无高(流媒体社区标准件)MIT
BBDown命令行工具无(CLI)Bilibili 专精无高MIT
cobaltWeb API/自托管简洁 Web 页主流平台直链提取有(API 优先)高(10k+ stars)AGPL-3.0
你们都在用的浏览器扩展(如 Video DownloadHelper)浏览器插件插件弹窗依站点而定无商业化+免费混合专有/混合

对比解读与选型建议:

  • 只求「把某个站的视频抓下来」且熟悉命令行 → 直接用 yt-dlp 或 N_m3u8DL-RE,功能最全、零部署成本,但没有界面、没有任务管理;
  • 要「自建一个有人机界面、多设备可访问、任务可管理」的私有下载服务 → MediaGo 是最契合的:它是这个赛道里少有的「服务端 Docker 部署 + Web UI + 完整 HTTP API」三合一形态,且把上述命令行引擎全部打包成了后端,等于同时获得它们的站点覆盖;
  • 要「给第三方应用提供视频提取 API」 → cobalt 是 API 优先的设计;MediaGo 的 API 虽然开放但定位是管理自己的下载任务,两者侧重不同;
  • 团队已有 NAS 且用宝塔面板 → MediaGo 在宝塔应用商店有一键部署,运维成本最低。

一句话结论:MediaGo 的核心价值不是「比 yt-dlp 支持更多站点」(底层就是 yt-dlp),而是把这些命令行引擎编排成了「可部署、可管理、可多端访问、可自动化」的完整服务——这正是 NAS 私有下载服务形态的缺口位。

八、参考链接