欢迎回来
登录你的知识库账户
忘记密码?
还没有账户?立即注册
创建账户
注册你的专属知识库
已有账户?去登录
找回密码
输入注册邮箱获取验证码
返回登录
请输入图片中的验证码以继续注册
加载中...
取消
新建收藏
手动添加你喜欢的内容
取消
编辑头像与昵称
上传新头像或修改你的显示昵称
支持 JPG/PNG,最大 2MB
取消

问题反馈

notebasewww.notebase.cn
控制台
内容库
动态
管理
账户
U
用户
--
在线
v0.8.7 · 知识库
笔记
KnowledgeBase
网络无边,知识有迹。
0笔记
0工具
30推荐

分类导航

按主题直达

编辑精选

站内用户贡献 · 真实笔记

最新收录

每日更新
继续浏览全部内容 →
>
笔记
0
加载中...
工具
0
此页用于记录用户反馈问题后的每一次改进
笔记用法

“写笔记”支持四种格式——Word 文档、Excel 表格、Markdown、纯文本,起稿或二次编辑时都能随时切换,同一篇笔记想用哪种形态来记,都由你说了算。

md、txt、csv、json 这类纯文本则原样载入,不做多余加工。拿一张现成的表倒进来、改几笔、再导出去,等于白用一台免费的格式转换器。

要带走就在右上角点“下载”,可导出 PDF、Word、Markdown、Excel、TXT 等格式;列表卡片“⋯”菜单里,也有同样的下载入口。

工具用法

在“工具”页点“+ 上传工具”即可发布:填好名称与链接,再用 Markdown 把使用方法写清楚——能解决什么问题、怎么装、怎么用,比堆介绍实在。

要分发安装包就一并上传压缩包(ZIP、RAR、7Z、TAR.GZ,最大 35MB),别人在详情页一键下载;只放链接不带附件也可以。

工具按大家的收藏热度排序,好用的自然会被顶上来。发布后可在详情页或卡片菜单里编辑、下架。

隐藏笔记

写笔记时勾上“隐藏”,这篇就只存在于你自己的账号里:不进列表、不进搜索、不上首页精选,也不会出现在任何公开的页面,链接发给别人同样打不开。

适合放密码、草稿、日记这类只给自己看的内容;想公开,去“发布”打开它,把“隐藏”的勾去掉再保存,之后编辑会默认保持原状态,不会悄悄变回公开。

数据安全

你的内容会同时保存在多个副本上,系统定期做备份与完整性校验,再配合异地容灾机制:就算某台机器出问题,数据也不会丢,可以长期放心存放;特别重要的资料,仍建议你另外再留一份备份。

技术

全站跑在容器化、模块化的现代架构上,更新、部署、回滚都很快,扩展性和稳定性都按长期运营的标准来设计(Built for reliability, designed to scale)。

理念

这个网站最早只是一个人的笔记仓库,后来慢慢长成现在的知识中枢。设计上很克制——没有广告、没有追踪、没有推荐算法,只是干干净净地存放一些东西;既然做好了,就公开出来,万一有人用得上呢。

原则

不做大而全,不做平台梦,保持简单、保持克制、保持好奇。所有内容都由用户贡献、由用户维护:不会突然冒出付费墙,不会在角落塞广告位,也不会把你的数据卖给第三方。

更多

产品会持续迭代,站内日志页记录着每一次改动,改了什么都有迹可循;想了解这个站是怎么一步步走到今天的,翻翻日志就能看到来龙去脉。

举报

如果在这里看到涉嫌违规的内容,点对应卡片右侧的“举报”按钮就能提交,我们会尽快核实处理;也谢谢你花一点时间,一起把这里维护干净。

趋势
// 点击导航加载发现
归档
// 归档为空
最近浏览
// 暂无浏览记录
发布
// 加载中...
用户发布
// 加载中...
用户管理
// 加载中...
访问统计
// 加载中...
内容审核
// 加载中...
个人信息
// 加载中...
返回首页

我试图开发一个浏览器,却被 Google 的 DRM 协议拦住了

1970/1/1编程开发

Google 的 Widevine DRM 授权拖延数月,导致开源浏览器项目 Metastream 无法完成,折射出开源项目在商业 DRM 体系中的困境。

背景:我为什么要做一个浏览器

过去两年里,我一直在开发一个名为 Metastream 的浏览器项目。它基于 Electron(即 Chromium 内核),采用 MIT 开源协议,代码托管在 GitHub 上。它的核心功能是同步播放:多个用户可以各自运行一个 Metastream 实例,通过传输播放状态信息(而非音视频内容)来保持进度一致,从而实现类似“一起看视频”的体验。

这听起来并不复杂——毕竟每个客户端自己播放本地内容,只是同步时间轴而已。但问题出在一个看似不起眼的环节:DRM(数字版权管理)。

DRM:浏览器播放商业视频的“入场券”

如果你想让浏览器能播放 Netflix、Hulu 这类大型流媒体服务的内容,就必须集成 DRM。Web 领域有三大 DRM 提供商:

  • Google Widevine(用于 Chromium 系浏览器)
  • Microsoft PlayReady(多用于 Edge 及部分智能电视)
  • Apple FairPlay(用于 Safari)

而对我这种基于 Chromium 的 Electron 项目来说,Widevine 几乎是唯一可行的选择——这不只是我的情况,所有基于 Chromium 的浏览器(包括 Brave、Vivaldi 等)都依赖它。

Chromium 目前占全球浏览器市场约 70% 的份额,而且微软即将把 Edge 彻底重写为 Chromium 内核,这个数字还会继续增长。换句话说,Google 控制的 Widevine 实际上扼住了几乎所有非自研内核浏览器的命脉。

四个月等待,只换来一句“不行”

我提交了 Widevine 的许可申请,然后……等了四个月。没错,整整四个月后,Google 才给了我这句冷冰冰的回复:不能在开源项目中使用 Widevine。

这并非我独有的遭遇。多个 Electron 开发者反映等待数月无果,更有名的是 Brave 浏览器的遭遇——其联合创始人兼 CTO Brian Bondy 公开抱怨过被 Google Widevine 拖延的问题,他说:

“这是‘免费不等于自由’的绝佳例证。小份额浏览器完全受制于 Google,而 Google 在没有任何沟通理由的情况下拖延我们。”

为什么 Google 不允许开源项目用 Widevine?

Widevine 是一个闭源二进制模块,Google 出于内容保护(或者说防破解)的考虑,对所有集成方实行逐案审批授权。由于 Widevine 的代码必须嵌入到浏览器中,而开源项目的源码是公开可查的,Google 会担心:开源环境下,攻击者更容易提取或篡改 Widevine 的密钥和逻辑,从而绕开 DRM 保护。

但这本质上是一个商业决策,而非技术必需。例如,Firefox 虽然也集成了 Widevine,但它是 Mozilla 通过商业协议与 Google 签订的,并非将 Widevine 作为开源代码那样自由分发。Google 的策略是:你既然是开源,我就不给你授权,除非你放弃开源或者有极强的商业背景。

对生态的伤害:开源浏览器的“死亡之吻”

这件事的深层影响远不止于我的项目。让我详细拆解:

  1. 市场垄断固化:由于 DRM 不可绕过,也无法在主流浏览器内核外轻易实现,Google 通过 Widevine 掌控了能否播放商业视频的门槛。任何想做一个新浏览器的团队,如果无法获得 Widevine 授权,就永远无法提供像 Chrome 一样的完整体验。这直接扼杀了浏览器的创新与多样性。

  2. Electron 生态受制:Electron 开发者遍布全球,许多桌面应用(如 Discord、Slack、VS Code 的某些版本)都包含网页播放功能。如果这些应用需要播放 DRM 内容,它们必须逐一向 Google 申请授权,且没有公开的申请标准或时间表。这种不确定性对商业项目而言是巨大的风险。

  3. “开源”概念的讽刺:Chrome 本身基于开源的 Chromium,其开放源码为 Google 赢得了大量开发者信任。但与此同时,Google 用闭源 DRM 作为隐形锁,阻碍任何基于开源代码的二次创新——这与开源精神完全相悖。正如 Brian Bondy 所说,“免费”不等于“自由”。

我现在的困境:两条路,都是死胡同

在收到拒绝回复后,我手头只剩下两个选项:

选项一:停止开发 Metastream 桌面浏览器版本。 这等于宣告两年的工作白白浪费,而且意味着用户将无法在桌面端获得同步播放体验。

选项二:将项目转型为浏览器扩展。 这样可以在不直接集成 Widevine 的情况下通过 Chrome 本身的 DRM 能力播放内容,但限制很多——扩展无法控制底层播放器行为、无法做真正的服务端同步设计,体验远不如独立浏览器。而且,发布到 Chrome Web Store 意味着我的项目将进一步被锁死在 Google 的生态里,变成了一个“租客”。

两个选项本质上都是在向 Google 屈服:要么放弃,要么彻底寄生在 Google 的平台上。

呼吁与行动

文章发布后,我收到了大量社区的回应。在我发帖的当天,HN 上有 1900 多分的热度,600 多条评论,Reddit 上也有大量讨论。但截至 4 月 4 日,Google Widevine 团队仍然没有给我任何进一步的回复。

如果你有意向申请 Widevine 许可,我建议提前准备好他们要求的所有信息(例如项目描述、为何需要 DRM、分发方式等),并且最好通过已有联系人的其他浏览器厂商去“催一下”——我的第一次回复就是在另一家厂商帮忙联系后才得到的。

我的观点

这件事不该只是我自己或者 Brave 的个例。它反映出 Web 平台的深层结构问题:当一个开源浏览器(Chromium)占据 70% 市场,而这个开源浏览器的商业巨头又控制着所有付费视频内容的播放许可时,Web 本身就不再是开放的了。

如果你是浏览器开发者,或者你依赖 Electron 做任何视频播放相关的工作,请关注 Widevine 的授权问题。如果你能帮忙联系到 Google 的相关人员,或者有法律/商业层面的建议,请随时联系我。

开源不应该是一个被商业闭源协议随意切割的标签。Web 的开放性需要更多人的守护。


原文链接:https://blog.samuelmaddock.com/posts/google-widevine-blocked-my-browser/

(本文为技术笔记改写,旨在保留原文的技术深度与信息量,并补充 DRM 背景知识以便中文读者理解。)

编写使用方法
Markdown 格式 · Ctrl+Enter 确定
新建笔记
预览
数据表格
点击单元格编辑 · Tab 移动
A1fx
Sheet1
BIH1H2≡🔗</>
隐私提醒

取消
编辑工具
取消