昨天下午三点,我把抽屉底层那块西数 1TB 移动硬盘插上电脑。风扇响了三秒,盘符跳出来。我翻到一个叫「2019-补番」的文件夹,里面躺着一个 .m3u8 文件,最后修改时间显示 2019 年 11 月 3 日,晚上 11 点 47 分。
我双击打开它。记事本弹出来,里面是 217 行地址。全部指向一个已经停止解析的域名。我用播放器打开试了一下,只跳出一行报错:「无法连接到服务器」。那个晚上我花了二十分钟逐个测试链接,没有任何一条存活。林小满坐在屏幕前,看着那个文件,忽然觉得它像一张过期的电影票根——座位号还在,影院已经拆了。
那个 .m3u8 文件里存着什么
我仔细看了那个文件。里面是《虫师》第二季的资源列表,每集对应一个分片地址,分片时长写着 10 秒。文件开头有一行注释,写着「备用源,速度还行」。这个备注是当时的我留下的,现在已经想不起来「还行」是什么标准。更有意思的是,文件第 88 行到第 102 行之间,混进了一段完全无关的地址,指向一个叫「94电影电影网」的镜像。我当时应该是手动拼贴的,复制粘贴时没清干净。这种粗糙的拼合痕迹,现在看来反而比内容本身更有信息量。
我顺着这个线索,去找了找当年常用的几个资源站。大部分域名已经变成停放页面,或者跳转到不明所以的抽奖广告。只有少数几个还在更新,比如「永久免费的宝藏网站」这个站,界面十年没变,服务器倒是换了好几轮。我把那条失效的播放列表截图发给了老陈。老陈回复:「你还留着这个?我去年就把那些全删了,占地方。」我说:「占 4KB 也叫占地方?」他没回。
为什么我还在意这些失效的东西
说实话,我并不是怀旧。我对 2019 年的那部动画没有特别感情,播放列表里存的内容我早就看完了。我在意的是「索引」这件事本身。一个 m3u8 文件本质上就是一份索引,它告诉你每一段内容在哪里。当索引还在、内容消失了,索引就变成了一份考古记录。你知道当年有人把某集动画切成了 800 多个小文件,分散存储,现在全没了。这种「知道曾经存在」的确定性,比「不知道存不存在」更让人心里发空。
我跟做后端的朋友周远聊了这个事。他在电话里说:「你知道现在流媒体平台做的是什么吗?就是把索引藏起来,让你永远找不到那份文件。」这话说得挺狠,但我没反驳。周远还举了个例子:他上个月想找一部 2016 年的纪录片,在五个平台之间来回切换,最后在一个盗版站找到了一个 480p 的版本,播放器提示「该地址使用 m3u8 协议,是否继续播放?」他点了是。画质很差,但他看完了。他说:「我知道这不体面,但我就是不想被索引绑架。」
一个不太讨喜的观点
很多人把 m3u8 当作「盗版播放列表」的同义词,我不这么看。这是一个被污名化的格式。m3u8 本身只是一个基于文本的播放列表说明,它不生产内容,只指向内容。真正的问题在于,当我们谈论这条技术链路时,往往只盯着链路的末端——那个播放页面——而忽略了上游的存储和分发方式。我甚至觉得,某些平台把 m3u8 加密、切片、防盗链做到极致,本质上是在用技术手段制造稀缺,而不是保护版权。这话可能得罪人,但这就是我的看法。
那个 2019 年的播放列表,我最后没有删。我把它重命名成「m3u8-2019-失效」,放回原处。它只有 4KB,不占什么空间。也许再过五年,我还会打开它,看看那些挂在文本里的数字,想想那个晚上我为什么要把它们一条一条粘进去。这跟怀旧无关,跟记录有关。今天的天有点阴,硬盘灯早就灭了,我合上电脑,出去买了杯美式。