wiliwili社区FAQ:新手常见问题解答

wiliwili社区FAQ:新手常见问题解答

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

1. 什么是wiliwili?

wiliwili是一款专为手柄控制设计的第三方跨平台B站客户端,支持PC全平台、PSVita、PS4和Nintendo Switch等设备。它提供了接近官方PC客户端的浏览体验,同时支持触屏、鼠标、键盘与手柄操控,让用户在不同设备上都能获得良好的使用体验。

2. 如何安装wiliwili?

2.1 Nintendo Switch

  1. 下载wiliwili-NintendoSwitch.zipwiliwili releases
  2. 将wiliwili.nro放置在内存卡switch目录下。
  3. 在主页按住R键打开任意游戏进入hbmenu,在列表中选择wiliwili点击打开即可。
  4. [可选] 在应用内安装桌面图标,入口:设置/实用工具/使用教程

桌面图标会优先尝试打开switch/wiliwili.nro,如果其不存在,则尝试打开switch/wiliwili/wiliwili.nro,如果这两个路径都不存在,则打开hbmenu自行选择路径。

默认提供的为OpenGL版本,最高只能播放4k@30,你也可以下载到支持原生图形api的deko3d版本,可以流畅播放4k@60,不过可能会偶尔崩溃。

2.2 PSVita

下载wiliwili-PSVita.vpk安装即可:wiliwili releases

开启硬解后可以流畅播放720P横屏视频,480P竖屏视频,部分直播1080P原画。

2.3 PS4

下载wiliwili-PS4.pkg安装即可:wiliwili releases

只支持软解,如果想播放4k@60需要在设置中开启低画质解码。

2.4 PC

PC客户端支持切换硬件解码、秒开流畅适合老电脑、支持鼠标操控(左键点击 右键返回 中键刷新)

下载对应系统的安装包运行即可:wiliwili releases

[!TIP] 现在Linux & Steam Deck用户可以通过系统自带的软件商店(如Discover、GNOME Software)搜索wiliwili进行下载。
更多使用技巧请参考项目WIKI

3. wiliwili有哪些功能特点?

wiliwili拥有非常接近官方PC客户端的B站浏览体验,同时支持多种操控方式,具有以下功能特点:

  • 多语言:简、繁、日、韩、英等
  • 搜索页:热搜、视频、番剧、影视
  • 筛选页:快速找到想看的影视内容
  • 动态页:关注的UP主最近视频动态
  • 直播页:关注的主播与其他系统推荐
  • 播放页:视频、番剧、电影、纪录片、综艺,支持弹幕与评论
  • 个人页:扫码登录、历史记录、个人收藏、我的追番、我的追剧
  • 主题色:拥有深浅两色主题,跟随系统自动切换

4. 如何反馈问题?

在反馈问题前,请先做以下事情:

  1. 网络相关的问题附加网络诊断截图,入口:应用内设置/实用工具/网络诊断
  2. [Switch用户]要确保大气层系统固件更新到最新内存卡FAT32
  3. [Switch用户]如果打开应用黑屏时间过长,可以尝试删除内存卡目录config/wiliwili重新进入
  4. 确保系统时间正确、系统网络设置正确(主要是DNS)、如果使用了网络代理请在反馈前关闭并重新测试
  5. 查找有没有其他人出现过类似的问题:Issues
  6. 完整且详细地描述你的问题,最好附加演示视频、截图。
  7. 尝试复现问题,尽力找到BUG出现的规律

5. 应用截图展示

应用截图1 应用截图2

6. 如何贡献代码或翻译?

6.1 软件移植

本应用基于nanovg绘制界面,nanovg底层可移植切换到任意图形库,已有OpenGL/Vulkan/Metal等支持。视频播放部分则使用FFMPEG + MPV绘制,默认使用OpenGL,有D3D11/Deko3d/Gxm或软件渲染支持。触摸/按键/输入法等平台相关功能通过GLFW或SDL来支持,也可以脱离二者直接实现,比如Gxm版PSV。

如果你要移植的设备支持OpenGL(ES)那么一般来说,直接编译就能正常运行。如果你要移植的设备使用其他底层图形库,那么首先需要移植nanovg,这可以确保应用主要界面正常,其次为了更好的性能表现需要ffmpeg的硬解和mpv的渲染支持。

如果你有想要移植的设备欢迎发一条issue讨论,Android / iOS不在讨论之内。

6.2 新功能

如果你有想完成的创意,请在开发前发布一个issue讨论,避免和别人的创意撞车浪费了时间

6.3 多语言支持

如果你想为软件添加多语言的翻译支持,或者发现了某些翻译存在问题需要订正,请查看#52了解如何贡献翻译

6.4 代码分支

主分支yoga为最新版本的代码
开发分支dev为正在开发中的代码,任何新的PR都需要向dev分支提交

7. 开发相关

7.1 拉取代码

# 拉取代码
git clone --recursive https://github.com/xfangfang/wiliwili.git
cd wiliwili

7.2 PC本地运行

目前wiliwili支持运行在Linux macOS和Windows上

macOS
# macOS: install dependencies
brew install mpv webp

cmake -B build -DPLATFORM_DESKTOP=ON
make -C build wiliwili -j$(sysctl -n hw.ncpu)
Linux

不同Linux的编译过程或依赖可能不同,这里是一份总结:#89

欢迎在上面的链接中写出你所使用系统的编译过程供大家参考。

# Ubuntu: install dependencies
sudo apt install libssl-dev libmpv-dev libwebp-dev

cmake -B build -DPLATFORM_DESKTOP=ON
make -C build wiliwili -j$(nproc)
# 如果你想安装在系统路径,并生成一个桌面图标,请使用如下内容编译
cmake -B build -DPLATFORM_DESKTOP=ON -DINSTALL=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr
make -C build wiliwili -j$(nproc)
sudo make -C build install

# uninstall (run after install)
sudo xargs -a build/install_manifest.txt rm
Windows
# Windows: install dependencies (MSYS2 MinGW64)
pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-make \
  git mingw-w64-x86_64-mpv mingw-w64-x86_64-libwebp

cmake -B build -G "MinGW Makefiles" -DPLATFORM_DESKTOP=ON
mingw32-make -C build wiliwili -j$(nproc)

7.3 交叉编译Switch可执行文件(wiliwili.nro)

推荐使用docker构建,本地构建配置环境略微繁琐不过可用来切换底层的ffmpeg或mpv等其他依赖库更灵活地进行调试。

以下介绍OpenGL下的构建方法,deko3d(更好的硬解支持)请参考:scripts/build_switch_deko3d.sh

Docker
docker run --rm -v $(pwd):/data devkitpro/devkita64:20240202 \
  bash -c "/data/scripts/build_switch.sh"
本地编译
# 1. 安装devkitpro环境: https://github.com/devkitPro/pacman/releases

# 2. 安装依赖
sudo dkp-pacman -S switch-glfw switch-libwebp switch-cmake switch-curl devkitA64

# 3. 安装自定义依赖
# devkitpro提供的提供的 ffmpeg/mpv 无法播放网络视频
# 手动编译方法请参考:scripts/README.md
base_url="https://github.com/xfangfang/wiliwili/releases/download/v0.1.0"
sudo dkp-pacman -U \
    $base_url/switch-ffmpeg-7.1-1-any.pkg.tar.zst \
    $base_url/switch-libmpv-0.36.0-3-any.pkg.tar.zst

# 4. build
cmake -B cmake-build-switch -DPLATFORM_SWITCH=ON
make -C cmake-build-switch wiliwili.nro -j$(nproc)

7.4 交叉编译PSV可执行文件

使用本地环境来编译可以参考:

注意: 我们使用自定义的mbedtls, curl和ffmpeg作为依赖, 在使用本地环境编译时,请先卸载vitasdk中的相关库,再安装指定的依赖.

# 构建 OpenGL ES 2.0 版
docker run --rm -v $(pwd):/src/ xfangfang/wiliwili_psv_builder:latest \
    "cmake -B cmake-build-psv -G Ninja -DPLATFORM_PSV=ON \
        -DMPV_NO_FB=ON -DUSE_SYSTEM_CURL=ON -DUSE_SYSTEM_SDL2=ON \
        -DCMAKE_BUILD_TYPE=Release && \
        cmake --build cmake-build-psv"

# 构建 Gxm 版 (推荐)
docker run --rm -v $(pwd):/src/ xfangfang/wiliwili_psv_builder:latest-gxm \
    "cmake -B cmake-build-psv -G Ninja -DPLATFORM_PSV=ON \
        -DUSE_SYSTEM_CURL=ON -DUSE_GXM=ON -DUSE_VITA_SHARK=OFF \
        -DCMAKE_BUILD_TYPE=Release && \
        cmake --build cmake-build-psv"

7.5 交叉编译PS4可执行文件

使用本地环境来编译可以参考:

docker run --rm -v $(pwd):/src/ xfangfang/wiliwili_ps4_builder:latest \
    "cmake -B cmake-build-ps4 -DPLATFORM_PS4=ON \
        -DMPV_NO_FB=ON \
        -DUSE_SYSTEM_CPR=ON && \
        make -C cmake-build-ps4 -j$(nproc)"

7.6 GLFW or SDL

wiliwili使用nanovg绘制图形和文字,对于创建窗口、按键触摸、输入法等支持是通过GLFW(默认)或SDL完成的。

因为GLFW支持平台有限,在移植到新平台时可以使用SDL或者自行实现上述对应接口。

# 示例
cmake -B build -DPLATFORM_DESKTOP=ON -DUSE_SDL2=ON
cmake --build build

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

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

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值