ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

wiliwili 终极指南:把游戏机变成全平台 B 站播放器

wiliwili 终极指南:把游戏机变成全平台 B 站播放器

wiliwili 终极指南:把游戏机变成全平台 B 站播放器

【免费下载链接】wiliwili第三方B站客户端,目前可以运行在PC全平台、PSVita、PS4 、Xbox 和 Nintendo Switch上项目地址: https://gitcode.com/GitHub_Trending/wi/wiliwili

wiliwili 是一款专为手柄玩家打造的第三方 B 站客户端,一个项目即可运行在 Nintendo Switch、PSVita、PS4 与 Windows / macOS / Linux 全平台。它把接近官方 PC 端的完整 B 站体验——弹幕、评论、搜索、直播、个人中心——带进游戏机和掌机,让追番只需一只手柄。

下面从破局思路、部署启动、模块拆解、进阶玩法到性能调优,带你完整跑通这个跨平台项目。

核心痛点与破局方案:手柄用户为什么苦"官方客户端"久矣

B 站官方客户端几乎都以鼠标键盘为第一交互,而游戏机玩家的主战场是手柄与电视大屏。痛点集中在三处:交互断层(方向键导航在网页级 UI 上极其别扭)、平台缺失(Switch / PSVita / PS4 上没有像样的 B 站应用)、性能妥协(掌机解码弱,随便一个 1080P 就卡)。

wiliwili 的破局思路可以概括为"一套 C++17 代码 + 可插拔图形后端":界面用 nanovg 统一绘制,窗口与输入走 GLFW 或 SDL2,视频走 mpv + FFmpeg。这样同一份逻辑,既能在 PC 上跑 OpenGL/D3D11,也能交叉编译到 Switch 的 deko3d、PSVita 的 GXM 原生图形 API。配合 跨平台 UI 框架 borealis 和 B 站接口封装,它把"接近官方 PC 端的浏览体验"真正搬到了游戏机上。

环境部署与快速启动:从下载到跑通的最小路径

不同平台的"最小步骤"差异很大,下面只列从零到能播的关键操作,弱化了繁琐的底层配置。

Nintendo Switch(需自制系统)

  1. 从发行版获取wiliwili-NintendoSwitch.zip,取出wiliwili.nro放入内存卡switch目录。
  2. 在任意游戏中按住R 键唤起 hbmenu,选中 wiliwili 后按 A 启动(入口也可看应用内 使用教程)。
  3. 可选:应用内 设置 → 实用工具 安装桌面图标,图标会优先尝试switch/wiliwili.nro,失败再回退 hbmenu 选路径。

PSVita / PS4:分别下载wiliwili-PSVita.vpk与wiliwili-PS4.pkg安装即可,PSVita 建议选 GXM 原生版以获得最佳硬解。

PC:下载对应系统安装包运行即可,支持鼠标(左键点击 / 右键返回 / 中键刷新)与手柄。Linux 与 Steam Deck 用户可直接在系统软件商店搜索wiliwili安装。

开发者从源码编译(可选):以 PC 为例,先git clone --recursive https://gitcode.com/GitHub_Trending/wi/wiliwili再cd wiliwili,然后安装 mpv、webp 等依赖并执行cmake -B build -DPLATFORM_DESKTOP=ON与make -C build wiliwili -j$(nproc)。Switch / PSV / PS4 的交叉编译均有现成脚本,见 构建脚本目录,多数场景一条 docker 命令即可出包。

核心模块深度拆解:一套"类 Android"的分层架构

wiliwili 的源码采用借鉴 Android 的分层设计,理解这一层就理解了整个项目骨架(见 核心源码 与 AGENTS 代码指南):

  • Activity(全屏页面):activity 目录 定义首页 / 动态 / 我的、播放页、搜索页、设置页等顶层页面,是导航的终点。
  • Fragment(子页面):fragment 目录 把复杂页面拆成可复用子块,如首页推荐、首页直播、影视筛选、我的历史、我的收藏等。
  • Presenter(数据逻辑层):presenter 目录 封装异步取数逻辑,页面继承它并在构造时调用requestData(),数据回来后触发回调更新界面,ASYNC_RETAIN/RELEASE宏保证视图销毁后回调安全退出。
  • View(自定义组件):view 目录 提供可复用控件,其中 mpv_core.hpp 是播放器核心,danmaku_core.hpp 负责弹幕叠层,recycling_grid.hpp 是自定义回收列表,滚动到底自动加载下一页。
  • API(接口层):bilibili 接口封装 通过 cpr + nlohmann/json 调用 B 站接口,2023 年后大部分 Web 接口走 WBI 签名,URL 常量集中在 api.h。

界面本身由 XML 驱动,布局文件位于 resources/xml/,多语言文案放在 resources/i18n/(简繁、日、韩、英等)。导航统一走Intent(如Intent::openBV(...)按 BV 号打开视频),见 activity_helper.hpp,这让"跳转到某页"变得一行代码即可。

进阶工作流与实战技巧:把播放器玩出专业感

主题与布局自定义:把主题放到配置目录theme/{id}/下(需含resources_meta.json),即可覆盖内置资源,切换后需重启生效。参考社区主题仓库可快速套用现成布局。

Anime4K 画质增强:在配置目录放一份shader.json,即可为特定番剧挂载 Anime4K 滤镜与 mpv 参数,shader_helper.hpp 会按animeList自动匹配:

{ "profiles": [ { "name": "Anime4K Mode A", "shaders": ["/path/to/Anime4K_Clamp_Highlights.glsl"], "settings": [["set", "scaler", "ewa_lanczossharp"]] } ] }

自定义字体与图标:往配置目录放font.ttf、icon.ttf、danmaku.ttf等即可覆盖内置字体;PC 端还可放gamecontrollerdb.txt扩展手柄识别。

直播与弹幕:直播弹幕走 live 模块 的 WebSocket 实现,直播页支持关注主播与系统推荐。个人中心聚合了历史记录、收藏夹、追番追剧与扫码登录,是重度用户的主阵地。

避坑指南与性能调优:高频故障与画质档位

反馈 / 排障前必做的三件事(源自 README):

  1. 网络问题先跑一次网络诊断(设置 → 实用工具 → 网络诊断),它会显示接口连通性、系统/服务端时间差、IP 与 DNS。
  2. Switch 用户确认自制系统与固件为最新、内存卡为 FAT32;黑屏过长可删除内存卡config/wiliwili后重进。
  3. 确认系统时间与 DNS 正确,若用了网络代理请先关闭复测。

性能与画质调优(不同设备最优解不同):

设备推荐配置说明
Switch (OpenGL)默认 4K@30开箱即用,稳妥
Switch (deko3d)4K@60 硬解流畅但偶发崩溃
PSVita开硬解720P 横屏 / 480P 竖屏流畅
PS4软解 + 低画质解码想播 4K@60 需开低画质解码
PC硬件解码老电脑可切软解秒开

画质档位:登录状态默认 1080P60,未登录为 360P;PSVita GXM 默认 720P、OpenGL 默认 480P,可在播放设置中手动升降档。配置统一存于各平台配置目录(如 PC 的~/.config/wiliwili/wiliwili_config.json),包含 Cookie、刷新令牌与全部SettingItem。

生态扩展与未来规划:活跃社区与 Roadmap

wiliwili 已接入主流 Linux 包管理器(Flathub、AUR、Scoop、Fedora COPR 等),并有独立测试版持续产出,社区活跃度高。翻译方面,项目通过 Crowdin 收集简繁、日、韩、英、意等多种语言的社区贡献,多语言资源 会随版本更新。

功能层面,官方 TODO 已勾掉播放历史、收藏夹、动态页、弹幕设置、点赞投币收藏、单手模式、重压摇杆快进等大量条目,仍在推进的规划包括:搜索支持用户、长按一键三连、个人主页、评论跳转进度、投票评论与互动视频。如果你有创意或想移植新设备,欢迎先在社区讨论区提 issue 对齐,避免撞车。

结语:现在就去把手柄接上

wiliwili 已经让"在游戏机上看 B 站"从幻想变成日常。无论你是在客厅大屏追番,还是掌机上睡前刷视频,按本文步骤装好、选好画质档,就能获得接近 PC 端的完整体验。想更进一步,就去翻 核心源码、套一套自定义主题、或为社区贡献一行翻译——这个跨平台项目,正等着和你一起进化。

【免费下载链接】wiliwili第三方B站客户端,目前可以运行在PC全平台、PSVita、PS4 、Xbox 和 Nintendo Switch上项目地址: https://gitcode.com/GitHub_Trending/wi/wiliwili

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进