
一家唱片公司用 C2PA 给目录打标以应对欧盟《人工智能法案》。我看着一次转码把它们全部剥光。
第一次把我自己的测试曲目送进一次普通的社交转码时,我眼看着唱片公司本会花钱加上的 C2PA 溯源,在一次处理中就消失了。屏幕上并没有戏剧性的场面。文件带着已签名的溯源头进去,编码器做完它平常的工作,出来的文件干净、更轻,也被剥得一干二净。溯源就这样没了——任何真实曲目一上 TikTok 或 Instagram,都会是同样的结局。我坐在那里略感不适,因为整场演示的构思都建立在「加上 C2PA 就是答案」的假设上,而我刚刚亲眼看着答案蒸发。
这篇文章讲的就是这件事。我着手为 AI 生成音频搭建一道欧盟《人工智能法案》第 50 条摄入关口,应用里叫它 Tessera,而这次搭建悄无拆穿了音乐版权圈里几乎人人带着的那个假设。那个假设是:第 50 条是个水印问题,给目录打上标签就解决了。其实不是。它是一个 存活问题,而行业正忙着加上去的大部分东西都活不下来。若想亲眼看关口自行裁决,它在这里:veriprajna.com/zh-Hans/demos/ai-audio-licensing-provenance。
我起步时的本能反应是「直接加上 C2PA」
开始动手时,我相信的和我读过的每一份版权技术路演材料相信的一样:第 50 条合规就是一场贴标签练习。
法规是真的,时间表也是真的。欧盟《人工智能法案》第 50 条于 2026 年 8 月 2 日生效,要求生成式音频输出以机器可读格式标记,并保持可检测——用委员会 2026 年 1 月《实践准则》草案的话说,是「在常见修改之后」仍可检测。第 99 条给出了牙齿:罚金最高可达 1,500 万欧元或全球营业额的 3%。背后的体量也不小。Deezer 每日上传中约有 28% 现已完全由 AI 生成(Beatdapp/Beatport,引自 Veriprajna WP31 研究,2026)。于是自然的一步——也是我流水线第一稿里走的一步——就是给每首 AI 曲目附上 C2PA 清单,然后宣称目录已覆盖。
直到亲眼看见,我才真正内化了这个失败。C2PA,按大多数人的部署方式,是 硬绑定。溯源住在文件的元数据里。而硬绑定几乎会被每一次社交平台上传时的转码剥掉——Veriprajna WP31 方案研究(2026)把这称为当今 C2PA 生态中最大的单一运营弱点。于是,一家尽职给整份目录打上标签的唱片公司,在运营上,曲目一离开干净交接、冲进野外的那一刻,就已处于未覆盖状态。
唱片公司做了指南要求的一切。它加上了 C2PA。而第一首曲目一上社交,它就未覆盖了——因为加上去的那部分,恰恰是会被剥掉的那部分。
真正能活下来的是 软绑定。不可感知的水印携带一个极小的标识符;元数据没了之后,你用这个标识符从账本重新解析清单。这是不起眼的集成工程。就我所见,这也是整场比赛的全部。
那个晚上,我自己的水印读回来全是垃圾
某个周二晚上,我自己的水印解码器开始返回噪声,我差点放弃软绑定。
流水线已端到端跑通。曲目经过交付通道,扩频解码器从交付后的波形读回标记,恢复出的密钥再去查清单。然后我重跑了前一天已清过的一批,恢复出的密钥却变成了垃圾。水印上的误码率在 0.5 左右——等于抛硬币——这是解码器在告诉你它读到的是静电。我的第一反应是:软绑定其实行不通,标记扛不住真实编解码器,整场演示的前提都错了。
有好几个小时,我确信这条路已经死了。死的不是方法。是 过期的磁盘语料。更早的缓存与曲目生成所用的确定性种子失了同步,于是解码器在读已经与音频对不上的标记。我从种子重建语料,用真实的 ffmpeg 转码把一切重跑一遍,密钥又干净地回来了。那次失败对我比对任何一次干净跑通都更有价值,因为它教会我:在确切知道一个好数字是怎么来的之前,不要信任它。本演示里的每一项基准,都是在那次重建之后才记录的。

一旦跑通,那组对比是我在屏幕上放过的最清晰的东西。以 Neon Tide 为例——一首经社交通道交付的合成内部 AI 发行(本语料中的每首曲目都是程序生成的音调,没有真实音乐或艺人,名称只是夹具)。它的硬绑定被转码剥掉。它的软绑定水印以置信度 0.989 恢复,C2PA 清单从账本重新解析。硬绑定死了。软绑定把溯源带过了关。并排,同一曲目,同一遍处理。那一块面板就是论点本身。
那我是不是只是做了个更好的水印?
几乎每次对话都会碰到某种版本的这个问题,答案是否定的——而这往往会让人意外。
我并没有去做一个要打败任何人的水印,我也谨慎地这么说,因为暗示相反结论的诱惑很强。市场领先的检测器——Google 的 SynthID-Audio、Meta 的 AudioSeal、Digimarc——在本演示里以 桩适配器 的形式坐在有文档的、可替换为 SDK 的接口后面。SynthID 的检测器是 Google 封闭的,AudioSeal 需要 GPU,所以在演示中它们只以固定置信度报告是否存在,别无其他。我确实写的那个扩频标记,只干一件事:携带一个 32 位资产密钥和 CRC,好让清单能被重新解析。它没有参加任何鲁棒性竞赛,我也从不声称它胜过任何厂商。
我构建的是围绕算法的那一层。Google 和 Meta 可以拥有水印。没有人作为单一产品交付的,是集成:多标准检测器、软绑定架构、DDEX 中间件,以及面向监管的文档包。真正解决存活问题的,正是这一层,而这也是没有任何单一供应商急着交到你手上的部分。

我想把这张存活矩阵的含义说精确,因为诚实的范围正是在一家名叫 Veriprajna——意为真智慧——的公司里动手的全部意义。在固定的 12 首合成发行语料上,我的标记经 mp3-128、aac-128 与 opus-96 重新编码后,以误码率 0.0 重新解码,而硬绑定在这些社交通道上无一存活。这是用真实 ffmpeg 做出的真实测量。它并非放之四海皆准的「什么都能活」的宣称,而且演示里本身就有一首标记完全活不下来的曲目——那才是我最自豪的部分。
我并没有做出更好的水印。我做出的是那一层:判断你仍握有的溯源是否足以认证,并在不足时拒绝。
那首我极想放行的曲目
我记得盯着 Radio Imaging Sweep 7,想放它过去——而正是那一刻,整场演示配得上它的名字。
这是一支广播剪辑,经我建模为 模拟间隙 的路径到达:从 FM 监听器做扬声器到麦克风的再捕获。它的标记没能活过那条路径。解码器以置信度 0.699 读回,CRC 失败,再也没有可恢复的标识符去解析清单。诱惑就摆在屏幕上。在干净母带上经社交编解码器跑的存活矩阵显示,该标记本可以扛过普通转码。于是我能看见一种逻辑:标记基本上没问题,只是通道差,放它过去。第 99 条杀死了那个本能。在最高 1,500 万欧元或 3% 罚金制度下,一次虚假的「合规」是昂贵的那种错。

于是关口做了更难的事。当标记在曲目实际经过的通道上确实活不下来时,它返回 NEEDS PROOF,把曲目路由给人工,并附上模拟间隙失败与具名负责人。它不认证。我把它写成单元测试过的不变量——测试名就字面指向水印死在模拟间隙里——因为我希望弃判是系统的属性,而不是一种情绪。弃判不是关口失效。弃判是关口拒绝虚张声势,而拒绝虚张声势,才是信任与安全负责人真正在买的东西。
在第 99 条的罚金下,一次虚假的「合规」不是小错。它是昂贵的那种错——正因为如此,关口被建成宁可弃判,也绝不虚张声势。
恢复出水印还不够吗?
早期我以为,恢复出水印基本上就是终点线;Glasshouse 是纠正我的那首曲目。
Glasshouse 干净地恢复了标记,置信度 0.992,三种编解码器上误码率均为 0.0。狭义上的溯源是完美的。关口还是拦下了它。原因在于链条的其余部分。DDEX ERN 4.3 没有 AI 披露字段,而且按 Veriprajna WP31 研究(2026),多数聚合商(CD Baby、DistroKid、Believe)也不会透传细粒度披露。Glasshouse 经 DistroKid 到达时,四个披露字段缺了三个:配器、混音与母带。依据第 50(4) 条,原样出货会构成主动披露违规,因此裁决为 BLOCKED,屏幕上援引的正是该条款。

这就是为什么关口检查的是 整条链路,而不只是标记:机器可读标记,加上交付通道之后的软绑定恢复,加上完整的 DDEX 披露,再加上具名的下架负责人。任一环节缺失,都得不到绿灯。在全部 12 首发行中,结果是 7 首认证为 COMPLIANT、2 首路由至人工整改、3 首被拦截,且 12 首每一首都带着援引条款的裁决。我在意的正是这份覆盖——版权技术负责人不会资助黑箱,他们资助的是可以交叉质询的东西(「为什么 Glasshouse 被拦?第 50(4) 条,三个 DDEX 字段缺失」)。
而带有法律分量的裁决,刻意做成确定性的。水印恢复、存活测量、软绑定查找,以及第 50 条的通过/失败,都是坐在语言模型之外的普通代码。系统里有智能体:一个从自由文本提取披露字段,一个对抗性地攻击每一次认证——但它们只提供建议。它们不做决定;整套系统在确定性回退下无密钥运行,因此无论有无 LLM,关口的数字都相同。智能体建议,代码裁决。
我也必须同样清楚这不是什么,因为品牌撑不住过度宣称。清单是 SQLite 账本里的 JSON C2PA 替身,并非经密码学签名的 C2PA 2.0。DSP 与聚合商连接器是模拟。发行是合成音调,不是真实录音;工具支持第 50 条的一种答法,并不向任何人递交法律认证。真实的是机制:恢复、存活测量、整条链路关口,以及它导出的文档包。
恢复出的水印告诉我溯源完好。监管方仍然关心披露是否完整、谁拥有下架。那是不同的问题,关口必须全部问到。
在让任何东西获得认证之前,我问自己的问题
我发现,搭建这件事改变我的,是比宏大论点更小的一件事——而那件小事持续得更久。
我不再问一首 AI 曲目是否拥有溯源,因为那个问题我通常能答,结果却不够。Neon Tide 有溯源,Glasshouse 也有,一首认证了,另一首被拦。现在,在任何东西以 COMPLIANT 离开关口之前,我问的是:我能否证明溯源活过了这首曲目实际经过的那条具体通道,链条上的每一个其他环节是否成立,以及当它不成立时,我是否宁可弃判也不猜测。
这不是更好的水印能回答的问题。随着 Google 与 Meta 的模型改进——它们会改进——价值不会挪到算法上,因为算法本就归他们。价值留在让溯源在现实世界中存活的集成层,以及即便软绑定失败也说出 NEEDS PROOF 的纪律。这次搭建中经得起时间的部分,不是下次 SynthID 变强就会过时的鲁棒性分数。它是存活测量、整条链路关口,以及诚实不变量——水印变好,它们既不会更容易,也不会更难。若想看我落在何处,关口再一次在这里:veriprajna.com/zh-Hans/demos/ai-audio-licensing-provenance。
若你更想看它跑起来,而不是听我描述,这里是整道关口端到端运行的过程。
所以我想留给你的问题,正是 8 月 2 日截止日期此刻正悄悄问每一家唱片公司的那个问题。你加上了标记。你能证明它活过了这一趟吗?因为在一次社交转码的另一边,你指望的那个标签已经没了;唯一能认证的,是你为恢复所剩之物而建起的那套东西。


