主要观点:YouTube 过去几个月在尝试新一轮反广告拦截措施,作者的一个账号处于实验组,其编写了过滤器避免部分反广告拦截措施(如假缓冲)。介绍了 InnerTube 相关内容、GVS 服务及 SABR 协议,解释了假缓冲的来源是 InnerTube 提供的 GVS 流在首次请求时会有 80%广告时长的回退,即使有假缓冲使用广告拦截器仍能节省时间。还提到避免被回退直到不可跳过广告结束的方法,如在播放器请求中设置playbackContext.contentPlaybackContext.isInlinePlaybackNoAd
属性为 true,以及绕过锁定脚本的方法(用Object.assign
替代JSON.stringify
),并提供了相关资源和联系作者的方式。
关键信息:
- YouTube 进行反广告拦截措施的 A/B 测试,作者账号在实验组。
- InnerTube 是 YouTube 内部 API,用于与视频交互。
- GVS 服务用于提供视频流,其 URL 有签名和过期时间。
- SABR 协议用于更好地流媒体视频数据。
- 假缓冲是首次请求 GVS 流时 80%广告时长的回退。
- 可通过设置属性避免被回退,还可绕过锁定脚本。
重要细节:
- 过滤器已在默认过滤器列表中,无需手动添加。
- GVS 服务的视频可由 ISP 的 Google Global Cache 服务器提供。
- 假缓冲仅在视频开头出现,不会在视频中间。
- 可使用
req2proto
工具提取 protobuf 定义找到相关属性。 - 在 Firefox 中可使用 HTML 过滤器过滤锁定脚本。
- 用
Object.assign
替代JSON.stringify
的过滤器更复杂。 - 提供了关于 GVS 播放 URL 和 YT 内部的博客文章等资源。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。