Skip to content
xfangfang edited this page Aug 9, 2025 · 268 revisions

欢迎来到 wiliwili 的 Wiki

这篇文档包含了关于 wiliwili 一切你需要了解的信息

⚠️ 注意:此文档时时更新中,部分内容不一定与当前的正式版一致。
如果文档中标注出某些功能无法在正式版本上使用,可以下载测试版,详细说明见下方第一节——#下载安装。

本文档包含:

1. 下载安装

  • Windows / macOS / Linux / Nintendo Switch / PSV / PS4
    • 参考 项目首页 说明下载安装即可
    • macOS 10.11-10.14 请下载带有 10.11 后缀的版本
    • windows 用户请先尝试不带 OldGPU 后缀的默认版,如遇问题再使用OldGPU版本:#414
  • Xbox
    请前往:wiliwili-uwp-poc#468
  • Steam Deck
    请参考:#41
  • 树莓派
    请参考:#78
  • 从包管理器安装
    请参考:#92
  • 测试版
    可以从 Github-Actions 下载自动构建的测试版客户端
    如果不知道如何从 Github-Actions 下载软件,这里是 教程
    也可以直接从这里下载(不保证一直可用):nightly.link

测试版更新内容

  • 添加被误移除的“全屏”选项

2. 使用指南

更多说明可以在应用内找到,入口在:设置 - 实用工具 - 使用教程

如果使用过程中遇到问题,如:黑屏、无法访问网络等,请查阅本文第五节。

快捷键

可以在应用设置中开启底部提示栏,对大部分快捷键都会有提示。

应用内未显示在下方提示栏中的快捷键

image

注: RT + 方向键上下 可以快速调节音量 (实验功能,随时更改)

PC 端快捷键请参考后文 #自定义PC端快捷键

应用设置功能解读

wiliwili 已经针对不同平台进行了优化,不同平台下的默认设置不同,如果你不知道究竟该怎么选择,那么推荐不要修改默认配置。如果你不了解具体某个选项的功能也推荐不要盲目修改。

低画质解码

开启了两个 mpv 选项 和 fast profile
vd-lavc-skiploopfilter: all
vd-lavc-fast: yes

推荐开启,对视频观感影响不大的同时降低了 CPU/GPU 占用。

硬件解码

在开启硬解时,设置了 mpv 选项:hwdec: auto-safe

除PS4外,其他平台均支持硬解(PC平台默认关闭),在视频页面全屏按 手柄左侧功能键(PC上为F1)可以查看详细信息,如果显示有 Hardware Decode: no 则说明未开启硬解。(switch 的 ubuntu 系统除外,那个硬解实现思路不同,无论怎么显示都开了硬解)

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

部分平台需要显式地指定硬解方案,才能正常开启硬解,请参考下方的 自定义硬解

解码缓存

关闭时设置了 mpv 选项: cache: no
开启时设置了:
demuxer-max-bytes: NMiB
demuxer-max-back-bytes: N/2MiB

在播放中预先缓存指定大小的视频数据,避免网络波动导致频繁加载,推荐设置成 10MB 就足够了。

视频格式/视频编码/视频音质

这个选项控制除直播外的其他视频获取的视频流格式

当选择视频格式为 Dash 时,可以调节优先获取哪个 视频编码/视频音质,根据你的设备来选择,如果不知道如何选择,保持默认值即可。
当视频格式为 flv/mp4 时,获取最高 1080p 的 h264 视频,仅用作备份方案使用。

图片设置

  • 缓存数量:表示究竟有多少张图像会缓存在显存中,在加载图片后将图片加入缓存队列,当缓存占满时根据这个选项的数值大小按照最近最少使用规则移除缓存。
  • 加载线程:同一时间加载多少张图片,这个数值越大图片加载速度就会相应越快(会根据设备的网速和性能有一个上限)

网络设置

  • TLS 验证:开启后网络访问更加安全,如果你访问网络时显示无网络,那么可以尝试关闭这个选项重新测试。
  • 应用代理:设置 http 或 socks5 代理(部分平台只支持http代理)

TV 风格搜索页

开启此选项后,点击应用内搜索会进入一个 TV 端风格的搜索页,附带关键字首字母搜索联想,适合掌机用户。

TV 风格播放器

开启此选项后:

  1. 焦点可以选到控制条上,通过确定键选中并调整,再次点击确定完成进度调整(之前:无法通过方向键调整进度)
  2. osd 隐藏状态下,按下确定键显示 osd。(之前:确定键控制播放和暂停)
  3. 全屏时 osd 显示状态下按返回键隐藏 osd,隐藏后再按返回键退出全屏。(之前:返回键控制直接退出全屏)

开启这个选项后,你只需要一个能连接到设备上的传统电视遥控器就能控制整个应用的全部功能。

界面缩放

调整应用文字大小和组件尺寸以适应不同屏幕大小,在大屏幕下可以显示更多的内容。

键位图标

下方提示栏显示的图标风格,目前在 pc 平台有三种风格可选 (xbox、playstation、keyboard)。你可以在应用配置目录放置 icon.ttf 文件来设置自定义图标,查看下一节获取详细信息。

3. 合理配置

本节包含:

  • 自定义界面布局
  • 自定义手柄支持
  • 自定义字体/按键图标/emoji
  • 自定义PC端快捷键
  • 自定义播放器配置
  • 自定义播放器OSD隐藏时间
  • 自定义着色器
  • 自定义硬解
  • 自定义视频源格式
  • 自定义视频最大清晰度
  • 自定义帧数限制
  • 自定义DLNA接收端名称/端口号/ip
  • 自定义窗口最小尺寸
  • 自定义自动窗口置顶的触发范围
  • 自定义触摸滑动速度
  • 自定义网络相关配置
  • 首页推荐屏蔽指定UP主

在自定义诸多内容前,你需要知道如何打开应用的配置目录,入口在:设置 - 实用工具 - 打开配置目录
你也可以直接打开配置目录:#39

自定义界面布局

wiliwili 使用 xml 来布局界面,如果你对当前的界面布局不满意,比如希望默认打开的页面不是首页推荐、想把某个收藏夹放在首页等等 都可以通过自定义布局的方式来修改。

修改布局不需要对编程十分了解,参考已有的布局修改即可。

详细说明:wiliwili_theme

自定义手柄支持

一些玩家使用了目前未被收录的手柄,可能会出现软件无法正确识别按键键位的问题,解决方法是下载或自定义 gamecontrollerdb.txt 放置在配置目录。
关于这个文件如何生成与如何修改,请参考:SDL_GameControllerDB
相关讨论:#54

自定义字体/按键图标/emoji

字体即为应用内使用的字体,设置自定义字体后会优先调用自定义字体包含的字形。

按键图标是当开启底部提示栏时(可于设置中开启或关闭),快捷键对应的图标,wiliwili pc 端应用内置了 xbox、ps 和 键盘 三种自定义图标包,如果你不是很喜欢,也可以仿照这些图标自己绘制。

请参考:#38

自定义PC端快捷键

配置项 默认快捷键 描述
shortcut_refresh ctrl-r 刷新列表、显示列表(如显示详细直播分区)
shortcut_search ctrl-f 首页搜索
shortcut_last pgup(PageUp) 上一页
shortcut_next pgdn(PageDown) 下一页
shortcut_last_sub shift-pgup 上一页(二级页面,如热门页面下的子页面切换)
shortcut_next_sub shift-pgdn 下一页(同上)
shortcut_volume_up 0 音量增加
shortcut_volume_down 9 音量降低
shortcut_video_profile f1 显示视频详情
shortcut_video_quality f2 显示视频清晰度菜单
shortcut_video_speed f3 显示视频倍速菜单
shortcut_playlist f4 打开播放列表
shortcut_setting f5 打开视频设置
shortcut_forward ] 快进
shortcut_rewind [ 快退
shortcut_danmaku d 开关弹幕
shortcut_video_osd o 开关 OSD
shortcut_video_speedup p 倍速播放
shortcut_video_pause space 暂停/播放

快捷键配置示例:

{
    "setting": {
        "shortcut_danmaku": "shift-d"
    }
}

快捷键由修饰键和按键组成,其中修饰键在前(可以多个),按键在后(唯一)
例: ctrl-shift-v, ctrl-alt-f1, f2, a, meta-1 ...
支持的修饰键: ctrl, alt, shift, meta
支持的按键: 0-9, a-z, f1-f12, pgup, pgdn, home, end, up, down, left, right, space, [, ]

meta 键在 Windows下为 win键,在macOS下为Command键,在linux下为 super 键。

暂不支持修改全屏快捷键:Windows/Linux 下 F11,macOS 下 ctrl-cmd-f
暂不支持修改方向键与确定(Return,Enter)、取消(Esc),未来也没有计划做这样的支持,不过你可以通过微调代码来快速完成(何尝不是一种自定义) 请参考:https://github.com/xfangfang/wiliwili/issues/119 参考:网友修改方案

自定义播放器配置

在配置目录新建 mpv.conf,其中写入 mpv 配置即可,配置内容可前往 https://mpv.io 查阅。
有一些配置指令会和应用内设置冲突导致无法使用,遇到这种情况请发布一个issue讨论。

例如:针对 switch 用户 为了提升播放性能或许可以配置如下内容:

# 可能会和部分自定义着色器冲突
fbo-format=rgba8
opengl-pbo=yes

例如:调整视频色彩等信息,见文档:Equalizer

saturation=0
brightness=0
contrast=0
gamma=0
hue=0

自定义播放器 OSD 隐藏时间

默认的播放器屏幕菜单自动隐藏时间是 5s,通过自定义选项 player_osd_hide 可自定义调整,单位毫秒。

自定义着色器

观看低分辨率视频(尤其是老动画片)时,可以使用自定义着色器来提升画面观感。
switch 的 deko3d 版本、PSV、PS4 均不支持自定义着色器。

这是作者正在使用的 shader 配置(按照压缩包内说明使用即可):wiliwili_shader.zip

如果你想自定义其他 shader 或 mpv 参数,可以遵循下面的流程:

  1. 将你需要的着色器文件放入配置目录下的 shaders 文件夹(默认不存在需要自己创建)
  2. 在配置目录下新建一个名为 pack.json 的文本文件,在其中写入:
{
  "profiles": [
    {
      "name": "SSimSuperRes (这里写自定义的配置名称)",
      "settings": [
        ["video-rotate", "270"]
      ],
      "shaders": [
        "SSimSuperRes.glsl (这里写入 shaders 目录下的文件名,可以同时指定多个)",
        "Another.glsl"
      ]
    },
    {
      "name": "跟随视频帧数 (你可以任意组合 settings 和 shaders)",
      "settings": [
        ["set", "video-timing-offset", "0.05"]
      ]
    }
  ]
}
  1. 重启应用,在视频播放页点击播放器右上角小齿轮,在弹出的设置页面选择你自定义的配置即可

自定义硬解

在 mpv 默认识别的硬解在你的设备上不起作用或效果不佳时,可以尝试自定义硬解。
在自定义硬解前,可以先在设备上直接使用 mpv 调试清楚再修改。
请参考:#78
Linux用户同时参考:#105
Windows用户可以参考:#220

自定义视频源请求内容

如果应用正常使用无问题,无需查看此节

  1. 配置项:file_format
    前端入口: 设置/视频格式,可以在 Dash 与 FLV 中切换。默认 Dash(AVC/HEVC/AV1) 对应的值为 4048; FLV/MP4 对应的值为 0;
    FLV/MP4 只有 1080P 和 360P 两种分辨率,作为Dash格式出错时的备选方案。
    若B站未来变更,在应用未更新前,可以手动去配置文件修改此值。定义见: #qn视频清晰度标识

  2. 配置项 video_codec
    开启 Dash 源后,可选视频编码,推荐搭配硬解选择 HEVC,不支持硬解的设备使用 AVC。switch ps4 psv 均推荐使用AVC。
    目前只设置了三个选项,若B站未来支持更多编码,在应用未更新前,可以手动去配置文件修改此值。定义见:#视频编码代码

  3. 配置项 audio_quality
    开启 Dash 源后,可选音频音质(暂未支持杜比全景声和Hi-Res)
    目前只设置了三个选项,若B站未来支持更多音频音质,在应用未更新前,可以手动去配置文件修改此值。定义见:#视频伴音音质代码

自定义视频最大清晰度

部分设备播放能力有限,可能出现:能正常硬解横屏4K视频,无法流畅硬解4K竖屏视频的情况。
这时,你可以分别限定竖屏和横屏视频的最大的清晰度。

横屏视频:video_quality_landscape_max 竖屏视频:video_quality_portrait_max

视频清晰度的定义见:#视频编码代码

PSV默认限制:横屏清晰度 720P;竖屏清晰度:480P
其他平台无默认限制。

自定义帧数限制

不稳定功能,默认关闭

可以写入配置文件的自定义选项:

  1. limited_fps(无需手动修改,可以在设置菜单中修改)
    设置为 0 时,最大刷新帧数受显示器帧数限制。(默认)
    设置为大于 0 的值,会限制最大刷新帧数到 limited_fps。(Windows平台只支持小于 60 的值)
  2. swap_interval(无需手动修改,可以在设置菜单中修改)
    limited_fps 为 0 时 生效,控制垂直同步效果,默认为 1,即软件帧数等于显示器刷新率,当值为 N 时表示 软件帧数等于 1/N 显示器刷新率。 并不是所有值在所有平台都支持,下面是一些测试结果:

    Test results:

    Platforms that always vsync (interval: 1):
    iOS18/GLES3/SDL
    PS4/GLES2/SDL

    Platforms that only support enable and disable vsync (interval: 0,1):
    Android9/GLES2/SDL
    macOS13.0+/GL3.2/GLFW (will fixed to 120fps with vsync enabled, https://github.com/glfw/glfw/pull/2277)
    Windows11/GL3.2/GLFW
    Linux Wayland/GL3.2/GLFW

    Platforms that not support disable vsync (interval: 1,2,3,4):
    Windows11/D3D11/GLFW
    Switch/DEKO3D

    Platforms that support arbitrary values (interval: 0,1,2,3,4):
    PsVita/GXM
    PsVita/GLES2/SDL
    macOS13.0+/GL3.2/SDL
    Linux X11/GL3.2/GLFW
    Linux X11/GL3.2/SDL
    Linux Wayland/GL3.2/SDL
    Switch/GL4.3/GLFW
    Switch/GL4.3/SDL

  3. deactivated_timedeactivated_fps
    在应用无操作 deactivated_time 毫秒后,限制最大刷新帧数到 deactivated_fps
    deactivated_time 设置为 0 关闭这个功能(默认值),单位 ms
    deactivated_fps 默认值 5 单位 fps

自定义DLNA接收端名称/端口号/ip

入口:设置-> 实用工具 -> 其他 -> DLNA 投屏

添加了三个配置项用于自定义配置(Linux下或者多网卡下,可能需要手动指定 dlna_ip):

dlna_ip: "192.168.1.100"
dlna_port: 9958
dlna_name: "wiliwili"

应用会开启: 0.0.0.0:${dlna_port} 的 http 服务(SOAP),和 0.0.0.0:1900 的 udp 服务(SSDP)

目前支持: 播放暂停、进度同步、控制声音

还需改进的问题:

  • SOAP端口冲突时自动调整 (目前简单写了个提示,先这么用吧)
  • SSDP服务支持端口复用 (全平台使用 SO_REUSEADDR,不一定能兼容到所有的其他软件)
  • SSDP服务支持多网卡 (目前使用默认网卡,先这么用吧)
  • SSDP定时发布服务 (腾讯视频依赖)
  • 支持事件订阅 (网易云 / qq音乐依赖,考虑到应该没人投这俩,所以先忽视这个功能)
  • 做好解析数据失败的 catch
  • 添加更多的DLNA事件支持 (DLNA控制播放器)
  • 添加播放器回调支持(播放器状态发送到DLNA)

自定义窗口最小尺寸

以下两个配置项用于设置窗口可调整的最小尺寸(单位:像素)。
在 macOS 下若显示器开启hidpi,则以逻辑分辨率为准。

"minimum_window_height": 270,
"minimum_window_width": 480,

自定义自动窗口置顶的触发范围

当屏幕尺寸在任意维度小于下列值时自动开启窗口置顶(单位:像素)。
在 macOS 下若显示器开启hidpi,则以逻辑分辨率为准。

"on_top_window_width": 270,
"on_top_window_height": 480,

自定义触摸滑动速度

如果你认为在触摸操作时,列表滑动速度过快或过慢,可以调整滑动速度(单位:%)

"scroll_speed": 100

100 表示默认速度(Windows下默认为 150)

自定义网络相关配置

使用 http_timeout, http_connection_timeout, http_dns_cache_timeout 来控制网络请求的超时时间和dns缓存时间。

首页推荐屏蔽指定UP主

手动添加设置项:

示例中的数字替换为up主的mid/uid,可添加任意多个。
mid 可通过手机客户端的up主个人主页,点击签名右侧的详情查看
也可以通过浏览器进入个人主页,尾部数字即代表UP主个人ID(例:https://m.bilibili.com/space/1234)

"up_filter": [1234,5678]

4. 开发指南

wiliwili 目前支持:

  • Linux / macOS / Windows (OpenGL 3.2+)
  • Nintendo Switch / PS4 / PSV
  • 其他 OpenGL2 / ES2 / ES3 设备 (树莓派等)
  • 其他非 OpenGL 图形API (DirectX等)

拉取项目

特别需要注意的是,你需要按照 README 所说递归地拉取项目,否则在 library 目录下的第三方依赖均为空目录无法构建。若拉取项目是没有按照 README 所说方式拉取,可以运行:

git submodule update --init --recursive

在切换分支时,以切换到 dev 分支举例,使用:

# method 1
git checkout dev
git submodule update --init --recursive

# method 2
git checkout --r dev

编译参数

请参考:workflow

wiliwili 使用 cmake 控制编译流程:

  1. 对于不同平台的编译需要手动进行指定(必选)
  • -DPLATFORM_DESKTOP=ON
  • -DPLATFORM_PSV=ON
  • -DPLATFORM_PS4=ON
  • -DPLATFORM_SWITCH=ON
  1. 使用系统路径中的库,而不是从源码重新编译
  • -DUSE_SHARED_LIB=ON
  • 请参考 CMakeLists.txt,还可以针对特定的依赖指定需不需要系统库
  1. 禁用部分依赖
  • -DDISABLE_OPENCC=ON 禁用简体转繁体功能
  • -DDISABLE_WEBP=ON 禁用 webp
  1. 播放器相关选项
  • -DMPV_SW_RENDER=ON 默认关,软件渲染
  • -DMPV_NO_FB=ON 默认关,禁用独立的Framebuffer,搭配 -DUSE_GL2=ON 时会强制开启此选项 (PSV 不推荐开启此选项)
  • -DMPV_BUNDLE_DLL=ON 默认关,将mpv动态依赖库打包进应用,请参考 workflow,Windows only
  1. 图形 API
  • -DUSE_GL3=ON PC/SWITCH 编译默认选项 (OpenGL3.2+,PC端适配到新平台推荐优先使用这个)
  • -DUSE_GL2=ON 适合树莓派或不支持 GL3+ 的 PC 设备
  • -DUSE_GLES2=ON PS4 编译默认选项;适合不支持桌面 OpenGL 的设备如 ARM Linux
  • -DUSE_GLES3=ON 推荐不支持桌面 OpenGL 的设备如 ARM Linux 优先尝试此选项,比 GLES2 性能更好;也可以搭配 ANGLE 支持其他图形API(可能需要修改部分代码)
  • -DUSE_DEKO3D=ON switch 独占选项,性能更好但暂时还不稳定
  • -DUSE_D3D11=ON windows 独占选项,更好的性能表现(推荐)
  • -DUSE_GXM=ON psv 独占选项,更好的性能表现(推荐)
  1. 窗口管理
  • -DUSE_GLFW=ON PC/SWITCH 编译默认选项
  • -DUSE_SDL2=ON PS4 编译默认选项 (有更好的手柄兼容性,如果PC端出现部分手柄无法识别,可以尝试用SDL,但是可能启动速度略慢于 GLFW)
  1. 资源文件相关
  • -DUSE_LIBROMFS=ON 默认关,将应用资源文件打包进可执行文件 (可以将应用打包为单一可执行文件)
  • -DLIBROMFS_PREBUILT_GENERATOR=libromfs-generator 在开启 LIBROMFS 时,交叉编译需要手动指定 generator,如何构建 generator 请参考 library/borealis/build_libromfs_generator.sh
  • -DCUSTOM_RESOURCES_DIR="" 设置自定义的资源文件路径,默认为执行目录或安装目录 (打包为 appimage 时比较有用)
  1. 其他
  • -DUSE_BOOST_FILESYSTEM=ON 默认关,使用 boost 而不是 std 的 filesystem (适配不支持 std filesystem 的老系统)
  • -DWIN32_TERMINAL=OFF 默认开,Windows 独占,在应用执行时会额外弹出 shell 窗口显示log
  • -DINSTALL=ON 默认关,Linux 独占,将应用安装到系统路径 (你可以通过 -DCMAKE_INSTALL_PREFIX="/some-path" 来指定具体的安装目录)
  • -DDEBUG_SANITIZER=ON 默认关,开发时推荐开启,搭配 -DCMAKE_BUILD_TYPE=Debug 使用,在执行时检测内存或指针等相关的问题

PS4/PSV 开发最佳实践

项目针对 PS4 和 PSV 分别提供了docker镜像,开发者无需繁琐地配置本地开发环境。(详情见 README)

在 Apple Silicon 上编译,推荐使用 OrbStack 代替 Docker Desktop,因为前者支持 Rosetta 运行 x86_64 的 Docker 镜像。(大概会有6倍以上的提速效果)

额外地,如果你使用 clion 开发,可以通过配置 docker toolchain 更好地使用镜像。

switch 目前因为硬解支持库更新频繁所以暂时先不维护docker镜像,使用官方镜像 + 第三方包的形式来支持(你可以在本地自己组装一下镜像)。

UWP 开发

UWP 有两个版本,其一是 windows only 的 xmake 版。其二是同时支持 xbox 和 windows 的 vs 版 ikas-mc/wiliwili-uwp-poc

对于 xmake 版,请参考项目根目录下的 xmake 脚本和 workflow 文件进行编译,因为目前默认提供的 Windows 版已经将图形 API 切换为 D3D11, 理论上性能与 UWP 一致,所以暂停了 xmake 编译脚本的维护,使用 xmake 进行编译时可能会遇到部分依赖库缺失的问题。

更新的进展请参考:#69 #221

其他

常规开发指南,请参考:#开发

Linux开发的额外信息:#89

树莓派及其他 OpenGL2.1 设备,请参考:#78

macOS 打包指南,请参考:#151

Github Actions

有些时候,用户的需求和wiliwili的已有设计不同,在wiliwili没有增加更多的选项以满足大家的需求前,可以手动修改代码来临时解决。本节说明如何利用 Github Actions 让用户无需配置环境,只需要在网页上点击即可构建 wiliwili。

  1. fork 本项目
    点击网页上方的 fork 按钮即可在你的帐号下创建 wiliwili 当前最新源码的副本。
image
  1. 开启项目的 Github Actions
    进入你 fork 的项目,点击Settings进入设置页面,在设置页面下开启项目的 Github Actions权限。
image
  1. 修改项目代码
    打开对应的文件,你就可以直接在github的网页里修改代码啦,保存代码后,Github Actions就会自动构建
image

部分代码不方便修改,比如 wiliwili 引用的第三方库代码(在library目录下)
一个简单的方法是修改构建脚本,通过sed等命令快捷修改库代码,请参考:网友的快捷键修改示例

  1. 检查构建结果
    你可以在 fork 的项目里找到 Actions,点击后就能看到修改后自动构建的结果
image

5. 常见问题

什么游戏主机支持安装wiliwili

  1. 目前 wiliwili 支持 psv/ps4/switch/xbox
  2. 对于 psv/ps4/switch 需要越狱你的主机。
  3. 对于 xbox 需要你拥有开发者账号,手动侧载安装包/或从应用商店搜索 Wiliwili: #468
  4. 原则上 wiliwili 只支持最新系统版本运行,非最新系统遇到软件bug请不要反馈。

SteamDeck 自动熄屏怎么办

安装插件:https://github.com/xfangfang/DeckyInhibitScreenSaver

switch 扫码无法登录账号

根据反馈,在正确设置系统时间和日期后,问题消失。 或等待半小时后重试。

switch 相册打开 wiliwili 大气层报错 2168-****

建议使用FAT32内存卡重做系统,或重新拷贝 wiliwili.nro 。
2168 报错应该是cpu执行到了错误的指令导致的,说明当前执行的文件并不是可用的可执行文件。
一般来说exFAT内存卡可能会遇到这个问题,因为switch系统本身对exFAT支持不佳,所以会存在随机的文件损坏。
另,有用户反馈使用安卓手机解压复制到自己的内存卡中时出现过类似的问题,遇到相似的问题的朋友,可以使用PC重传试一试。

switch 启动黑屏

删除内存卡目录 config/wiliwili 重新进入。
据我猜测,或许和exFat格式的系统固件有关,可以尝试重刷不带exFAT驱动的固件(这需要你的内存卡格式化为FAT32格式)

switch 打开输入法报错

一般来说是系统问题,建议重做系统。
有用户反馈:安装系统固件时选择只有 FAT32 驱动的安装方式后问题消失。(这需要你的内存卡格式化为FAT32格式)

switch 播放器彩屏报错

可在设置中关闭视频缓存或关闭硬解来缓解。

switch 开启 wiliwili 后,进入相册死机

可能是 sysdvr 插件造成的问题,详细讨论: #254

switch 用什么内存卡有区别吗

推荐 FAT32 内存卡,因为更稳定。
exFAT 也可以正常使用,但是因为系统原因,可能会出现随机的小问题,严重者会导致卡内文件随机消失,所以为了自己的存档安全,还是赶紧换到FAT32。

switch 支持什么系统版本

作者只会针对最新的系统固件 + 最新的大气层来测试。
其他组合(系统版本11之后)大概率也可以正常运行,但是如果出现问题请不要反馈,优先选择更新到最新的大气层和系统。

播放视频会在本地留下缓存吗?

不会,除了前文中提及的配置文件,wiliwili不会向你的硬盘写入任何其他内容。

如何直接从游戏主机更新软件

switch

推荐下载 HB APP Store 自制应用商店: appstore/wiliwili

注意:应用商店会自动下载应用到 switch/wiliwili/wiliwili.nro ,但是如果你的设备中已经存在 switch/wiliwili.nro 那么wiliwili的桌面图标会优先打开后者。

ps4

推荐下载 Homebrew Store 自制应用商店:pkg-zone/wiliwili

psv

按顺序推荐下载 VitaDB DownloaderEasyVPKBetter Homebrew BrowserVita HomeBrew Browser 等自制应用商店:vitadb/wiliwili

ps4 联网如何保证主机安全

联网主要防范系统升级,当然即使出现升级提示只要正确取消,也不会有任何影响。要做到安全联网,首先需要屏蔽系统更新,这一步通过在浏览器中选择来完成。 然后是设置 DNS,有两个操作方式,任选其一即可:

  1. 配置专门用于屏蔽系统联网请求的 DNS,参考:Al-Azif/ps4-exploit-host
  2. 【推荐】在浏览器缓存越狱页面之后,设置一个不存在的 DNS,这会阻止几乎所有系统联网请求(不影响串流和 wiliwili)。

我的switch会因为使用wiliwili而被ban吗

首先每台破解设备都有被ban的风险,使用这个软件需要自负风险。

  1. 大气层支持配置屏蔽序列号和内置host屏蔽任天堂服务器,如果你所使用的系统正确配置了这两项内容,那么被ban的可能很小
  2. 自制桌面图标会虚拟一个游戏id,可能会被当成盗版游戏看待,如果没有配置上一条,同时安装了wiliwili的桌面图标,可能会被ban
  3. 如果没有安装桌面图标,那么因为wiliwili而被ban的风险几乎为0。(这也是大家常说的ban盗版不ban破解)
  4. 盗版游戏(桌面图标) + 没有正确配置大气层 + 联网 = 100%被ban

我的switch被ban了,可以使用wiliwili吗?

可以,ban机不能访问任天堂的网络服务,但还可以正常使用互联网。

打开应用显示 Network Error

  • 检查系统时间,错误的系统时间(包括日期)会导致应用无法正常联网
  • swtich 用户需要检查 DNS 和 IP 设置,保持默认设置,不要使用90 DNS等专为屏蔽设计的DNS服务器
  • 关闭 TLS 验证选项。关闭验证后,即使系统时间错误也不会影响网络访问。不过你的网络请求可能因此遭受中间人攻击。

无法播放视频

  • 检查自己的DNS,有些DNS服务器无法解析B站视频链接
  • 海外用户可能存在部分问题(比如单栈ipv6导致的部分功能不可用),因为作者测试不到各种情况,所以推荐到 issues 详细反馈

API错误

有可能是网络不好导致的,也可能是B站API变更导致的,可以到 issues 详细反馈

无法点赞-投币-收藏

使用最新版本扫码重新登录客户端。
0.6.0 及之前的版本采用的登录方式在点赞时会被判定为没有权限,新版本使用了新的登录方式(新的方式可以在手机中查看到登录设备)
1.2.0 及之前的版本没有保留 cookie 中的 buvid3,在 23/10 后,不带buvid3请求会判定为没有权限。

无法向 wiliwili 内置的 DLNA 投屏接受端投屏

DLNA投屏能否正常使用主要和网络环境相关,在普通局域网内经测试绝大部分国内软件都能正常播放使用,如果您用的客户端无法正确搜索到 wiliwili,欢迎反馈。
额外的,如果你正在使用 盗版视频app 向 wiliwili 投屏,可能出现能投但是不能播,对于这种情况 wiliwili 不给予处理。
如果在 PS4 上使用 wiliwili,可能会遇到部分客户端 (迅雷、wiliwili 本身的DLNA投射)无法搜索到 PS4 的情况,这是由于这些客户端的 DLNA 协议实现不完全导致的。详情

Linux 下通过 Flatpak 安装,无法从应用内打开网页或本地目录

wiliwili 使用 xdg-open 来打开外部路径(网页或配置目录),可能存在打开错误的应用或者无响应的情况,这里以 KDE 下,修复打开目录为例:

  1. 先运行:gio mime inode/directory,这时会返回默认设置的用于打开目录的应用,一般出现问题时会返回一个错误的应用。

  2. 设置自定义的配置,这里使用 dolphin (KDE下的文件管理)来打开目录。

sudo su
echo -e "[Default Applications]\ninode/directory=org.kde.dolphin.desktop" >> /etc/xdg/mimeapps.list
  1. 再次运行 gio mime inode/directory 能看到默认应用已经设置正确。
(deck@steamdeck ~)$ gio mime inode/directory
Default application for “inode/directory”: org.kde.dolphin.desktop

如何反馈问题

推荐到 issues 详细反馈

Clone this wiki locally