Repository navigation
OcPlayer v0.1.9 · 内核换装 v0.1.9+dolby.streaming.fix.dev——预取窗口封顶
OcPlayer v0.1.9 · 内核换装 v0.1.9+dolby.streaming.fix.dev——预取窗口封顶
下载
| 文件 | 平台 | 说明 |
|---|---|---|
OcPlayer-v0.1.9-macOS-arm64.dmg / .zip |
macOS(Apple Silicon) | ad-hoc 签名,未经公证,首次打开可能有 Gatekeeper 提示 |
OcPlayer-v0.1.9-ios-unsigned.ipa |
iOS(iPhone / iPad) | 未签名 IPA,需用 AltStore / Sideloadly / TrollStore 等工具重签安装 |
SHA256SUMS.txt / SHA256SUMS-ios.txt |
— | 对应平台产物校验和 |
macOS 与 iOS 同用 fork 的 v0.1.9+dolby.streaming.fix.dev(commit 2c43702)——该 fork release 附全平台资产,两端不再分叉。产物内已写入 build 号与提交短哈希(关于页 v0.1.9 (Build N · 短哈希))。
本次改动
持久流预取的窗口不再无界——这是 0.1.8 里记下的待跟进项。
0.1.8 把按需读取从「每 4 MiB 一次有界请求」换成持久流 worker(每个 worker 持有一条开放式 GET bytes=锚点-,背压交给 TCP),公网慢源上的「播不动 / 卡死」随之解决。但那条链路留了个尾巴:worker 只从 reader 的 paused 标志得知「窗口满了」,而 reader 在包队列满时就不再刷新这个标志——于是快源上背压信号失效,worker 会一路把整个资源预取完(927 MB 的片源实测缓存到 659 MB)。表现就是播放期间进程内存随预取窗口持续增长:1.6 GB 的片源实测涨到约 1.3 GB、峰值 RSS 1415 MB,而 App 传给内核的预读 / 回退各只有 32 MiB。macOS 上只是内存偏高,iOS / tvOS 上有 jetsam 风险。
新内核(fork commit 85a9738)让每个 worker 按自己的生产偏移对绝对边界自我节流,不再依赖 reader 的刷新节奏,前向窗口因此真正封顶。
C ABI 无变化:erika.h 与上一版逐字节相同,ErikaOpenOptions 布局未动,App 侧零适配。杜比视界 RPU 映射与持久流预取本体未动,0.1.8 的慢源 A/B 口径(开播 13.2 秒、78.3 秒播放零卡顿、预取 stripe 中位 31ms)仍然成立。