❝事情的起因很简单:我在豆包上生成了一批不错的视频和图片,想保存下来发出来,结果每张图、每段视频都带着平台水印。试了几个网上所谓的“去水印工具”,要么画质被压缩,要么根本用不了。
于是我决定——自己搞。
一、先搞清楚:水印到底能不能去掉
一开始我也走了弯路。网上那些“解析接口”“在线去水印”基本都是骗人的——要么给你一个带水印的版本糊弄过去,要么直接返回错误。
折腾了一圈之后,我意识到一个核心问题:水印不是在视频上“盖”上去的,而是在服务端就直接“烧”进去的。
也就是说,你从公开接口拿到的视频流,本身就是带水印的输出。想要无水印,只有一个办法——让服务端直接给你输出不带水印的版本。
那问题就变成了:服务端凭什么给你无水印版本?
答案是:你得证明这个内容是“你自己的”。
二、突破口:登录态才是钥匙
我发现了一个很简单的道理:豆包允许你下载自己生成内容的无水印版——因为那是你的作品。但你不允许下载别人分享的内容——因为那是别人的作品。
这个逻辑其实很合理。但对我来说,这意味着一个好消息和一个坏消息:
好消息:我自己的账号里生成的内容,理论上是可以拿到无水印的 坏消息:我得找到“官方给自己人用的下载通道”
于是我借助AI的帮助,开始一步步分析豆包网页端的网络请求。
三、AI帮我拆解了整个流程
说实话,如果没有AI帮忙,这一步我可能就放弃了。豆包前端用的是SSE流推送数据,每次生成视频,服务端会通过text/event-stream源源不断地推送媒体信息。这些信息里藏着关键字段——视频ID、媒体token、播放地址。
AI帮我分析了这些数据的结构,告诉我哪些字段可能是用来控制水印的。然后我试着修改了一个参数,重新请求——奇迹发生了:
无水印的视频地址,真的返回了。
那一刻的感受,怎么说呢——柳暗花明啊。
四、我把这个过程做成了一个浏览器插件
既然找到了方法,那就干脆做成工具,方便以后自己用。
我开发了一个浏览器插件,实现了以下几个功能(具体细节暂时不公开,怕被和谐):
功能一:页面内一键下载在豆包网页里生成的每一张图、每一段视频,都会自动挂上一个「无水印下载」按钮。点一下就能保存,不用复制链接、不用跳转页面。


功能二:媒体库管理所有生成过的图片和视频,会自动汇总到一个面板里。按类型分区展示,支持预览、筛选,还可以批量下载——一次选中多个,一键全部保存。

功能三:智能命名与调度下载的文件会自动按“标题+时间戳”命名,不会出现一堆乱码文件名。批量下载时自动排队调度,不会卡死浏览器。

功能四:复制直链除了下载,也支持直接复制无水印链接,方便分享到其他地方。
❝⚠️ 以上功能的详细实现方式和具体操作路径,暂时不在这里公开。懂的都懂。有感兴趣的,可以私信联系。
五、几个重要的限制,先说清楚
1. 仅限自己账号这个插件只能下载你自己账号下生成的内容。别人分享给你的链接,任何方案都拿不到无水印——这是平台版权设计,不是技术缺口。
2. 需要登录态插件依赖你在浏览器里的豆包登录状态。如果你没登录,所有功能都无法使用。
3. 依赖页面结构豆包前端如果改版,插件可能需要同步更新适配。
六、写在最后
这次探索让我明白了一件事:无水印是权限,不是技术。
服务端烧录水印 + 官方下载接口按账号授权,构成了一个干净的安全模型——技术手段再强,也拿不到不属于你的无水印源。
但反过来,如果你自己的内容,你自己却拿不到高清版——那这个工具就有了它的价值。
📌 如果需要插件,后台留言。
具体功能和安装方式我会单独回复。
夜雨聆风