V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
KinsleyNg
V2EX  ›  Linux

这个 Linux 的 chrome 硬解就这么难处理吗

  •  
  •   KinsleyNg · 235 天前 · 2061 次点击
    这是一个创建于 235 天前的主题,其中的信息可能已经有所发展或是发生改变。
    显卡 amd 780M cpu 7840hs popos chrome 下加了什么启动项都不能启动硬解,chrome://gpu 里 video acceleration 显示 decoder 和 encoder 两行都是空白...firefox 倒是说是可以硬解,但是也不知道是不是走的硬解
    顺便问下,amd 核显在 linux 下怎么看走的是硬解还是软解?
    13 条回复    2024-06-03 10:17:28 +08:00
    BRS5672023
        1
    BRS5672023  
       235 天前
    nvtop 里可以看,如果有 enc 显示非零占用就说明调用了硬件解码
    BRS5672023
        2
    BRS5672023  
       235 天前
    mesa 24.1 应该可以 xwayland 使用 chromium 硬解了 [frontends/va: Only export one handle for contiguous planes]( https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26165)。。

    不过我用 hyprland 以及使用 hidpi 的情况下 xwayland 的体验就。。
    KinsleyNg
        3
    KinsleyNg  
    OP
       235 天前
    @BRS5672023 我打开 nvtop 显示"No GPU to monitor",请问是什么问题呢?
    还有我现在是 x11 ,应该跟 wayland 的问题不大
    kuanat
        4
    kuanat  
       235 天前
    根据 Pop!_OS 加上 nvtop 的提示,我估计是内核版本低了,驱动比较老,没有暴露足够的 sysfs 抽象。780M 是 RDNA3 架构,大概要 6.4 之后的版本才能有比较完整的驱动支持。Pop 是 Ubuntu 22.04 LTS 的衍生版,内核可能还是 5.X ,我不确定官方仓库是不是有足够新的内核。首先要保证内核版本够高,能正确加载 amdgpu 驱动。

    如果你说的 chrome 是官方那个 deb 版本,硬件加速是通过 vaapi 实现的,这个版本编译的时候是带了 vaapi 支持和相应解码器的。(某些发行版仓库里 chromium 编译时未开启 vaapi ,像红帽系的发行版 fedora 由于版权问题是缺少一些解码器)

    然后为了支持 vaapi ,需要 libva-mesa 驱动。libva 还有个使用 vdpau 后端的驱动,主要是供老一点的型号用的,vdpau 在新架构上基本被 libva-mesa 替代了。

    再之后由于 mesa 在 amd 设备上只支持 Xorg/XWayland ,所以要保证 chrome 运行在非 wayland 模式下。如果你没手动指定的话,大概率 session 就是 Xorg 的。

    最后就是 chrome 播放视频验证的时候要确认编码格式。说这么多其实我猜测比较可能的原因就是驱动版本和 libva-mesa 。安装好了应该就正常了,还不行你可以再来反馈或者去报 bug 。
    KinsleyNg
        5
    KinsleyNg  
    OP
       234 天前
    @kuanat 我现在的内核是 6.8 ,所以跟内核应该也关系不大。
    然后你说的 mesa 驱动,我也是安装过了,因为 firefox 上是能够正常硬解的,奇了怪了:(
    kuanat
        6
    kuanat  
       230 天前
    @KinsleyNg #5

    我刚刚又确认了一下,Google 官方打包的那个版本,确实是没有视频解码硬件加速的。原因不清楚,我是拿 bili 的 av1 做的测试。

    我用的 Fedora 官方源的 chromium 测试,是有视频解码硬件加速的。
    KinsleyNg
        7
    KinsleyNg  
    OP
       230 天前
    @kuanat 那就对了,我用的就是 google 官方打包的 deb 包。请问你是在 fedora 的 wayland 还是 xwayland 环境下进行的测试呢?
    kuanat
        8
    kuanat  
       230 天前
    @KinsleyNg #7

    实测 xwayland 有效,wayland 无效。楼上说 24.1 相关补丁才合并,目前 f40/rawhide 都只有 24.0.6 的包。

    即便补丁合并了,我还是不建议以 chrome 为主力的时候选择 fedora 。由于版权的缘故,RH 系只能把解码器托管在 rpmfusion ,然后 chromium build 和原版经常不一致。反正 gtk4 在我印象里是没有生效过的。

    然后 chromium 只实现了 text-input-v1 协议,这个协议除了 KDE/KWin 根本没人支持,就连 KWin 的支持还是 fcitx5 作者加回去的。所以在 Fedora 上既要 wayland 又想输入法正常,只能是 KDE 版本。而其他发行版可以 gnome/gtk4 曲线救国。

    另外我只是用 fedora 但是不用 gnome ,日常主力是 sway ,sway 不支持 text-input-v1 。hyprland 那边是支持的,fedora/hyprland 这个组合可以考虑。

    至于 firefox 虽然我常年支持,但是在性能方面弱不少,硬件解码支持大家都一样,但其他方面差距很大。我在另一个帖子里刚好提到了,B 站现在那个弹幕功能,firefox 的硬件加速比较原始,纯 3D overlay 。Chrome 就好很多,把 css3 用 video enhance 单元来加速。
    KinsleyNg
        9
    KinsleyNg  
    OP
       229 天前
    @kuanat 现在还是先用着 x11 吧。官方打包的 deb 包实测是不行,你知道 ubuntu 下的哪个 chrome 打包能启用硬解吗?如果要用 fedora 又要重新安装,确实有点麻烦。
    kuanat
        10
    kuanat  
       228 天前 via Android
    @KinsleyNg #9

    我是说不推荐 fedora ,ubuntu 什么情况不清楚。非官方打包的只能叫 chromium ,试一下官方源里的吧。
    BRS5672023
        11
    BRS5672023  
       205 天前
    现在 arch 的 aur 里已经有 patched 过的 google-chrome 能在 amdgpu + wayland 下使用 vaapi 了(不过好像 hevc 的解码还有问题。。另外启用 extra-testing 可以更新 mesa 24.1 了)[url=https://aur.archlinux.org/packages/google-chrome-wayland-vulkan]google-chrome-wayland-vulkan[/url]
    KinsleyNg
        12
    KinsleyNg  
    OP
       199 天前
    @BRS5672023 可惜我正在用 fedora,没精力折腾 arch 了 XD,不过 firefox 看 b 站确实拉胯,性能比 chrome 软解还要差
    BRS5672023
        13
    BRS5672023  
       198 天前
    @KinsleyNg 上游相关的 patch 都已经 merge 了,现在 arch 上的 chromium 已经可以正常硬解了,不过 chromium 的 patch 好像是 arch backport 的,所以其他发行版可能还得等后续更新。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4989 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 05:41 · PVG 13:41 · LAX 21:41 · JFK 00:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.