Skip to content

Releases: Kihara-Ri/Qiliu

栖流 1.5.0

Choose a tag to compare

@github-actions github-actions released this 02 Oct 02:49

应用内更新体系

  • 新增体验补丁通道:改善体验的小改动以 ed25519 签名的前端模块包形式放在仓库 patches/ 目录,应用检测到后自动下载并应用,无需用户确认;索引验签、逐文件 sha256 校验、下载域名白名单、加载连续失败自动停用,且只写入应用数据目录,不触碰安装包本体与用户数据。
  • 新增应用版本更新通道:桌面端(macOS/Windows)接入官方更新器,检查到新版本后在「关于」面板展示说明,用户确认后自动完成下载、minisign 验签、安装与重启;Android 端检查 GitHub 最新发布并提供「前往发布页」。
  • 检查节奏:启动后延迟一次、之后每 6 小时,也可在「关于」中手动「检查更新」。
  • 「设置 → 更新」提供「自动应用体验补丁」开关;「关于」面板显示当前应用与补丁版本、最近检查时间,并提供「回滚补丁」(回滚后同版本不会自动回来)。
  • 收藏、上次播放、音量、控件位置(localStorage)与 Bilibili 登录凭据(系统安全存储)在两条更新通道中均完整保留。
  • CI 在配置 TAURI_SIGNING_PRIVATE_KEY secret 后自动产出更新器签名与 latest.json;未配置时发布流程照常,应用内更新显示「已是最新」。
  • 新增 scripts/make-patch.mjs(补丁签名与发布工具)与 scripts/make-update-manifest.mjs(latest.json 生成),机制详见 docs/app-updates.md。
  • 前端 71 项、Rust 52 项测试通过;补丁验签含 Node 签名 / Rust 验签的跨实现对拍。macOS 自定义协议加载补丁模块的实际效果尚待真机验收,失败时会自动停用并提示,不影响播放。

栖流 1.4.1

Choose a tag to compare

@github-actions github-actions released this 29 Sep 03:21
  • 修复 GitHub macOS 安装包的资源签名不完整:先构建 app,对完整 bundle 执行 ad-hoc 签名并严格验证,再生成 DMG;不再只以镜像完整性判定可交付。
  • 包含 1.4.0 的虎牙预加载续接、系统播放信息、房间封面、央视频道和 Android 发布修正;三个平台均重新编译为 1.4.1。
  • Android 仍为 release 编译、调试密钥签名测试包;macOS 未经 Apple 公证。Windows 和 Android 尚未完成真机长时间播放验收。
  • macOS 系统“正在播放”面板的按钮和封面尺寸仍待视觉验收,未将其标注为全部完成。
  • 故障与修复报告
  • 提交、构建、上传及验收流程

栖流 1.4.0

Choose a tag to compare

@github-actions github-actions released this 28 Sep 13:42

直播播放与系统控件

  • 修复虎牙有限时长 FLV 连接轮换时先清空播放器而导致的周期性闪黑:提前建立下一条连接,等待解码帧和至少一秒缓冲后交接。
  • 暂停、停止及换源会取消待交接连接;准备失败保留当前播放,避免过时请求接管新房间。
  • 接入系统播放信息:应用名、直播间标题、主播与房间封面,仅注册播放/暂停操作,并兼容旧 WebKit 的直播时长展示。
  • macOS 原生播放器已实测续接;系统“正在播放”面板的按钮和封面尺寸尚未完成视觉验收,不宣称所有系统版本均已隐藏进度条。

播放来源

  • 新增 CCTV-1、CCTV-13 官方频道链接解析;只提供当前 CDN 实际可用的画质。补齐对应媒体域名的播放许可。

Android 发布修复

  • 修复 Android 发布包显示 Tauri 默认图标:CI 重新生成的 Android 工程自带模板图标,从不读取仓库内的 src-tauri/icons/android/。现在 android:init 之后由 scripts/sync-android-icons.mjs 同步启动器图标(本地打包脚本同样内置),CI 打包后还会校验生成的 Android 工程内图标与仓库图标逐字节一致。
  • Android 发布包改为 release 编译:此前未配置上传密钥时 CI 发布的是 debug 编译 APK,原生库超过 230MB,在部分真机上加载缓慢或被系统终止,表现为点开即闪退。现在始终 release 编译,无上传密钥时用标准调试密钥签名(文件名仍带 -debug 后缀),并保持 16KB 页对齐。

验证与报告

  • 58 项前端测试、36 项 Rust 测试通过;11 项实时网络测试默认忽略,另行执行了虎牙房间 196645 的长连接测量。
  • macOS 原生播放器连续完成三次同线路交接;另一次跨交接采样记录最大帧回调间隔 278 毫秒,不作为零卡顿保证。
  • Windows / Android 由各自工具链构建,尚未完成对应设备的直播播放验收。
  • 故障与修复报告
  • 完整发布流程
  • Android 文件名若带 -debug,表示调试密钥签名的 release 编译测试包;不是正式签名版本。macOS 包未进行 Apple 公证。

栖流 1.3.1

Choose a tag to compare

@github-actions github-actions released this 12 Sep 15:59
  • 启用「一隅 · 暖瓷」新图标:暖白底、深青窗口角与珊瑚红圆点,同步 macOS、Windows、Android 和网页资源。
  • 恢复设置按钮的旋转过渡,保留侧栏与分页的平滑切换。
  • 修复侧栏鼠标活动与残留焦点影响控件静止可见度的问题,增加静止效果预览。
  • 音量和设置按钮支持拖动定位、位置记忆与渐显渐隐。
  • 将“监控”改为最左侧的“信息”,集中展示直播间链接、主播信息与播放状态;“设置”集中放置画质、线路、控件和账号调整。

栖流 1.3.0

Choose a tag to compare

@github-actions github-actions released this 07 Sep 14:20

修复

  • 修复 Bilibili 直播 HLS 线路开播约 7 秒后持续停播:直播播放列表随每次刷新变化,却被响应头 Cache-Control: max-age=300 长期锁住,默认加载器反复读取旧列表而无法获知后续分片。现在仅对直播播放列表请求使用 no-store,媒体分片仍走默认加载器,签名 URL、取消信号与请求策略不变。
  • Bilibili 直播发生真实欠缓冲时改为补足缓冲:暂停画面消费并在后台继续接收约 4 秒画面后自动续播,短 CDN 抖动不再触发反复的小幅重启;超过 12 秒仍无足够数据才进入换源恢复。
  • 追赶直播画面与缓冲补足的落点改用 buffered 而非 seekable:MSE 时间轴可能跨越空洞,seekable 不代表实际可播的帧,避免跳到空洞处再次停滞。
  • 暂停、切画质、换线路与离线时统一清理补足缓冲计时器,避免残留定时器干扰下一路播放。

验证

  • 41 项前端测试、32 项 Rust 测试和生产构建通过。
  • Bilibili 房间 4420009 对照验证:旧行为运行 116 秒仍停留在最初 7 个分片;修复后 104 秒已下载 110 个分片并正常播放。
  • macOS 修复版应用在 HLS 原画线路上完成桌面复测,详细记录见 docs/bilibili-buffering-investigation.md。

栖流 1.2.0

Choose a tag to compare

@github-actions github-actions released this 06 Sep 10:22

修复与播放来源

  • 修复 Android 点击图标立即退出:在 Activity 建立后初始化 Android 上下文及凭据存储,存储失败不再导致播放器退出。
  • Bilibili 画质选项只使用当前房间的 accept_qn,不再把全站画质名称表中的档位全部显示为可选。
  • 画质和线路改为应用内深色选项框,支持键盘选择;设置页面更紧凑,默认桌面窗口无需滚动。
  • 切换画质或线路时立即清除旧监控数据,并在连接完成后显示服务端实际画质和线路。
  • 调整 Bilibili 初始数据缓存,减少低码率直播起播等待;持续缓冲仍取决于直播源与网络情况。
  • 新增斗鱼与抖音直播间解析,以及收藏列表开播状态检查。

验证

  • 33 项前端测试、32 项 Rust 测试和生产构建通过。
  • Android 15 ARM64 模拟器复现旧版崩溃;修复版通过三次冷启动及后台恢复,界面正常显示。
  • Android 安装包在未配置正式签名时明确标注为 debug 测试包。

播放控制

  • “立即播放”不再自动收藏直播间;收藏改为独立操作,并将最后播放项与收藏状态分别持久化。
  • 设置页增加当前直播间标题、主播、头像和直播状态,换源后能立即确认实际播放对象。
  • 虎牙与 Bilibili 会返回真实可用的画质、CDN 与传输线路,允许用户手动切换;手动选择画质后,本次播放不会被自动降档策略覆盖。

窗口与动效

  • Windows 主窗口改为无系统标题栏,并在应用内提供最小化、最大化/还原和关闭按钮,同时保留顶部拖动区域。
  • 设置、收藏、监控和关于共用一条可滑动的橙色指示条,内容按标签方向横向切换。
  • 继续保持设置面板永久挂载;展开和收起只改变合成层位移,不改变视频尺寸,也不产生横向溢出。

栖流 1.1.0

Choose a tag to compare

@Kihara-Ri Kihara-Ri released this 03 Sep 12:15

栖流的首个跨平台版本。

  • 新增与桌面端同一风格的 Android 手机界面:竖屏底部抽屉、横屏全屏设置层、触控友好的 44px 以上控件。
  • 新增 Windows x64 NSIS 安装包与 Android arm64 APK 自动构建。
  • Bilibili 登录凭据按平台保存到 Apple 钥匙串、Windows 凭据管理器或 Android Keystore。
  • 新增版本同步与一键打包脚本,之后发布新版本只需准备版本号并推送标签。

安装包由 GitHub Actions 在各平台原生环境构建并上传;Android 在未配置正式签名密钥时会明确标记为 debug 测试包。完整变化与构建方法见 README 和 docs/cross-platform-builds.md。

栖流 Qiliu 1.0.0

Choose a tag to compare

@Kihara-Ri Kihara-Ri released this 01 Sep 15:58

栖流的首个正式版本。

主要内容

  • 支持虎牙直播、虎牙回放和 Bilibili 直播。
  • 虎牙正常 FLV 会话结束时优先刷新签名并续接当前 CDN,连续故障后才换线。
  • Bilibili 根据账号实际可用档位请求最高 H.264 FLV,并显示服务器确认的真实 QN。
  • Bilibili 使用 Worker 解复用、启动缓冲和真实欠缓冲检测,持续不稳定时仅在当前会话降至 QN 400。
  • 采用“栖流 / Qiliu”正式名称和“流窗”应用图标。
  • 设置面板永久挂载,只通过 transform 隐藏,避免 WebKit 视频层黑块和布局挤压。
  • 支持持久化直播收藏、应用内 Bilibili 扫码登录、链接粘贴清洗、双击全屏和三级音量图标。

安装

下载下方 Qiliu-1.0.0-macOS.dmg,打开后将“栖流”拖入 Applications。

当前构建使用 ad-hoc 签名,尚未经过 Apple 公证。首次启动若被 macOS 阻止,请在 Finder 中右键应用并选择“打开”。

验证

  • 15 项前端测试通过。
  • 21 项 Rust 默认测试通过;10 项真实网络/账号测试按设计忽略。
  • macOS 应用构建、代码签名检查和 DMG 完整性校验通过。
  • SHA-256: 1346974c39d5ea4e591b13375d284e23d9f51c9ba3a4c571e86d585e7436fd5f

完整技术原理、构建与安装方法见 README。