关于画质。YouTube 的单流上限就是 720P;1080P 以上一律是视频、音频分离的自适应流,必须有人把两条轨拼成一份清单。
网页自己做不到(没有本地服务端),所以 DASH 引擎用 Invidious 实例现成的 MPD:/api/manifest/dash/id/…,里面已经拼好了。
清单地址不以 .mpd 结尾,播放器猜不出类型,所以走 fm.vodInline 的逐集 resolver,显式回一个
format: application/dash+xml——之前 DASH 播不了就卡在这。DASH 是自适应的,播放器会自己上到最高,清晰度在播放页里调。
HLS 引擎是备选,能按档位精确挑一条,但 YouTube 的 iOS 清单一般到 1080P 为止。两条都不通才退回 NewPipe。
关于代理。本页所有接口走
fm.req、所有图片走
fm.res,两者都使用 App 统一 OkHttp,会继承配置里的
proxy / hosts / doh 和增强功能里的
Proxy 壳代理 规则。页面本身不做任何代理,请在 App 侧配置一次即可。
播放使用 App 内置 NewPipe 解析 YouTube 链接,取到的是
googlevideo.com 直链,所以代理规则必须同时覆盖播放域名,否则会出现“能刷列表、不能起播”。