Cobalt 使用指南:粘贴链接即可快速下载在线视频与音频,覆盖 20 多个平台
【免费下载链接】cobaltbest way to save what you love项目地址: https://gitcode.com/GitHub_Trending/cob/cobalt
你可能遇到过这样的场景:看到一段想离线保存的在线视频,浏览器里找不到"另存为"按钮,随手搜到的下载工具不是满屏广告,就是要装插件、配代理,折腾半天还没下成。其实这件事可以很简单——Cobalt 就是一个开源媒体下载工具,核心逻辑只有两句:粘贴链接、拿到文件。它支持 YouTube、TikTok、Twitter/X、Bilibili、SoundCloud 等 20 多个平台的视频与音频解析,并且没有广告、没有追踪、没有侵入式分析,整个过程不依赖任何复杂配置。
🎯 为什么选它:把"保存内容"这件事变回它本来的样子
先说 Cobalt 解决的是什么问题。多数在线平台并不方便你直接保存内容,而市面上一批第三方下载工具往往在界面里塞进广告位、收集使用数据,甚至需要你在多个扩展之间切换。Cobalt 的设计取向恰好相反:
- 干净无干扰:官方定位就是"fast, friendly, no bullshit",前端页面只有一个输入框,粘贴链接后直接开始解析,没有任何推广内容。
- 平台覆盖广:从长视频到短视频,从音乐到图文帖子,README 中维护了一张清晰的支持矩阵,标明每个平台支持视频、仅音频还是仅视频,哪些能力可用一目了然。
- 解析与转码在本地完成:当你自行部署实例时,媒体的解析、格式转换(底层依赖 ffmpeg)全部发生在自己的环境里,你可以选择托管在个人服务器上,数据流不经过任何第三方。
- 接口即文档:Cobalt 自带一套开放 API,Web 界面本身只是它 API 的一个前端。这意味着你不仅可以"用"它,还可以在自己的脚本或项目里"调"它。
🚀 零门槛实战:三步跑起自己的 Cobalt 实例
Cobalt 需要 Node.js 18+ 环境,推荐直接用 Docker Compose 部署,官方在 docs/run-an-instance.md 里给出了完整步骤。简化后就是:
- 克隆仓库到本地:
git clone https://gitcode.com/GitHub_Trending/cob/cobalt- 按照仓库内 docs/examples/docker-compose.example.yml 的示例准备一份 compose 配置,注意把默认 URL 换成你自己的地址;
- 启动容器,一条命令即可:
docker compose up -d如果你更习惯原生运行,也可以在克隆后执行npm run setup跟随引导完成初始化,再用npm start启动。整个流程不需要注册账号,也不需要填写任何 API Key——这就是"零配置"的含义。
📦 场景化应用:它实际能帮你做什么
下面按几个真实使用场景来说明,你会发现 Cobalt 的能力远比"粘贴链接"这四个字丰富。
提取音乐和视频原声。对 YouTube 音乐、SoundCloud 曲目,你可以直接勾选音频模式,Cobalt 会输出 mp3、ogg、wav、opus 四种格式之一,其中 opus 是质量最高的有损格式。TikTok 还专门提供了"原始音频"选项,能拿到创作者使用的完整原声,而不是被平台截断的片段。
保存无水印短视频。TikTok 场景下可以下载无水印版本,轮播图帖子的图片也会去除水印;Twitch 则支持片段(Clips)解析并保留元数据。对 Twitter/X 和 Instagram 这类一条帖子带多个媒体的平台,Cobalt 会返回一个选择器(picker),让你勾选具体想保存哪条视频、哪组图片,而不是整帖打包。
自定义下载文件的命名。下载回来的文件叫什么名字,直接决定你以后找不找得到它。Cobalt 内置 classic、pretty、basic、nerdy 四套文件名模板,实现就在 src/modules/processing/createFilename.js 里,逻辑简单到可以逐行读懂,比如 pretty 模板会生成"标题 (1080p, h264, 服务来源)"这样的可读格式。
把下载能力接进自己的工具。Cobalt 的 Web 页面本质上只是 API 的壳。通过 docs/api.md 中定义的POST /api/json接口,你在请求体里传url、aFormat、vQuality等参数,就能拿到直链或流媒体地址。如果你的需求是批量管理多个下载任务,或者做一个团队内部的小工具,调用这个接口比维护界面省事得多。
🔍 技术透视:源码里值得看一眼的几处
对有源码阅读兴趣的读者,Cobalt 的目录结构非常直白,值得顺着数据流走一遍:
- src/modules/processing/services/:每个平台一个独立模块(youtube.js、tiktok.js、bilibili.js 等),新增平台支持时只需在这里加文件;
- src/modules/processing/match.js:入口分发器,根据链接域名和路径模式把请求路由到对应平台模块;
- src/modules/processing/servicesConfig.json:各平台的链接匹配模式(patterns)、子域名规则的集中配置,想看懂 Cobalt 如何"识别"一条链接,从这里开始最快;
- src/modules/stream/:负责直播流(HLS/m3u8)解析与媒体合并,配合 ffmpeg 完成最终的格式转换。
🔒 安全与信任:你的数据留在自己手里
隐私层面,Cobalt 的态度是明确的:官方声明中强调"no ads, trackers, or invasive analytics",也就是说它不卖数据、不埋点。而当你选择自建实例后,信任边界进一步收缩——你粘贴的每一个链接、生成的每一个文件,都只在你自己的服务器与目标平台之间流转。
此外,Cobalt 在 API 层内置了速率限制(rate limit)、时长上限等保护机制,防止实例被滥用;它也明确自身只能下载免费的、公开可访问的内容,本质上是把浏览器开发者工具就能做的事做得更方便,这一点在 README 的"ethics and disclaimer"一节中有完整说明。
结语
如果你需要一个"粘贴链接、拿到文件"的媒体保存工具,且不希望为它忍受广告和复杂设置,Cobalt 值得放进你的工具箱:十分钟内可以跑起一个本地实例,后续无论是提取音频、保存无水印短视频,还是把下载能力接入自己的自动化流程,都有现成的模块和文档可以依赖。去仓库里试一次,成本很低,而它省下的时间会超过你的预期。
【免费下载链接】cobaltbest way to save what you love项目地址: https://gitcode.com/GitHub_Trending/cob/cobalt
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考