xfangfang / wiliwili

第三方B站客户端,目前可以运行在PC全平台、PSVita、PS4 、Xbox 和 Nintendo Switch上
https://xfangfang.github.io/wiliwili
GNU General Public License v3.0
3.03k stars 146 forks source link

flatpak: update libmpv 0.37 #253

Closed madoka773 closed 7 months ago

madoka773 commented 7 months ago

看起来ffmpeg可以用flathub里面的,感觉可以删掉libwebp和ffmpeg部分

xfangfang commented 7 months ago

感谢,有两个小问题:

  1. pr需要提交到dev分支
  2. github action 的构建脚本也需要对应修改一下:https://github.com/xfangfang/wiliwili/blob/d53373cdaaa64c9759b5ec62253ea41ecf1a9b5b/.github/workflows/build.yaml#L391-L394

这个构建脚本是针对aarch64,多增加了opengl es2 的版本(改一下插入的行号就行)

madoka773 commented 7 months ago

opengl es2 的版本 x86_64也能用吗? 我洗个澡就回来改改

xfangfang commented 7 months ago

如果系统支持的话应该也是能用的,前面那里虽然也写了x86,但是暂时没有构建x86的gles版本。

支持es2的主要目的是通过 angle 间接地支持其他图形api。

xfangfang commented 7 months ago

另外一个需要注意的点,对于 1.2.2 我犯了个错误,对于1.2.2,搭配es2的话还需要添加 -DMPV_NO_FB=ON 才能正常使用。但是发布这么久都没有收到反馈,我估计是用的人还是太少。

对于现在的dev分支,这个选项在这个情况下就可有可无了。

MPV_NO_FB控制mpv绘制的方式,默认是mpv独立写到一个framebuffer上,然后按需显示在屏幕上。添加了 MPV_NO_FB 后,mpv直接绘制到屏幕上。

这个选项主要是用来适配opengl2的。(1.2.2之前 es2 / 3 也需要开启才能正常使用,但dev分支已经支持了 es2 / 3 的独立写入framebuffer功能,所以这个开不开都行)

madoka773 commented 7 months ago

@xfangfang 你看看这样行不行? 这样的话ci那里的sed应该可以删掉了吧

xfangfang commented 7 months ago

我的想法还是保持原样,gles最好只在不得不用的时候再用,因为其他情况下(指的是opengl3.2+)可能会有更好的性能表现。(gl3.2+ 有更好的硬解支持,部分平台还支持pbo等额外的功能,都会让gl3.2 相比于es2表现更好)

madoka773 commented 7 months ago

haole

xfangfang commented 7 months ago

好的非常感谢~

madoka773 commented 7 months ago
five@fedora:~$ flatpak run --log-session-bus  cn.xfangfang.wiliwili 
bwrap: Can't mkdir /app/lib/ffmpeg: Read-only file system

~好像有点问题~ 这下能启动了↓

madoka773 commented 7 months ago

这个文件是否需要加上翻译?flathub的商店页面能显示中文的 cn.xfangfang.wiliwili.appdata.xml

xfangfang commented 7 months ago

如果有的话自然是更好了

madoka773 commented 7 months ago

不懂就问,我看也没有新的提交吖,怎么又能构建成功了呢

xfangfang commented 7 months ago

前两天rebase了一下 OpenCC,顺手就强制推送的,导致wiliwili的yoga分支找不到以前的OpenCC了,所以我又把本地的备份提交了上去,在 OpenCC 的 backup 分支:https://github.com/xfangfang/OpenCC/tree/backup

xfangfang commented 7 months ago

非常感谢,刚刚搜索了一下,已经可以在应用商店看到了。 https://flathub.org/apps/cn.xfangfang.wiliwili

dragonflylee commented 6 months ago

libv4l2nv-codec-headers 是不是也可以删掉,都包含在 ffmpeg 里面了吧

另外 libplacebo 可以把所有选项都关掉,也可以减少一些依赖

madoka773 commented 6 months ago

其实是跟着这里来的 https://github.com/flathub/org.kde.haruna/blob/master/org.kde.haruna.yml

madoka773 commented 6 months ago

看起来nv-codec-headers可以删掉因为用的是ffmpeg runtime,我再看看

madoka773 commented 6 months ago

libv4l2nv-codec-headers 是不是也可以删掉,都包含在 ffmpeg 里面了吧

另外 libplacebo 可以把所有选项都关掉,也可以减少一些依赖

~之前带libv4l2和nv-codec-headers是因为我们的ffpmeg是自己构建的,现在不需要了。忘记删了~

不过官方的ffmpeg好像并没用上nv-codec-headers https://github.com/flathub/io.github.celluloid_player.Celluloid/issues/6

至于libplacebo是和mpv 的vulkan有关,不清楚应不应该关掉这些选项

madoka773 commented 6 months ago

~如果runtime用的是gnome的话倒是可以把SPIR-V那一串东西删掉~

madoka773 commented 6 months ago

nv-codec-headers还是需要的,mpv的构建要用这东西,虽然不是强依赖

madoka773 commented 6 months ago

看起来去掉glslang也没影响 flathub那边已删,这边的话得看作者意思