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

Linux 下怎么提升本地视频播放体验

  •  
  •   lry · 2023-01-16 09:16:15 +08:00 · 3384 次点击
    这是一个创建于 680 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我的电脑配置如下

    CPU: AMD Ryzen 9 5900X 
    GPU: Advanced Micro Devices, Inc. [AMD/ATI] Navi 23 [Radeon RX 6600/6600 XT/6600M]
    
    OS: Linux Mint 21 Cinnamon
    Kernel: 5.15.0-57-generic
    

    播放器用的是 VLC ,普通 4K H265 视频经常出现绿色 / 红色色块解码问题,偶尔还会闪屏。

    Video
    ID                                       : 1
    Format                                   : HEVC
    Format/Info                              : High Efficiency Video Coding
    Format profile                           : Main@L5@Main
    Codec ID                                 : hev1
    Codec ID/Info                            : High Efficiency Video Coding
    Duration                                 : 43 min 42 s
    Bit rate                                 : 1 907 kb/s
    Width                                    : 3 840 pixels
    Height                                   : 1 634 pixels
    Display aspect ratio                     : 2.35:1
    Frame rate mode                          : Variable
    Frame rate                               : 25.000 FPS
    Minimum frame rate                       : 24.993 FPS
    Maximum frame rate                       : 25.007 FPS
    Color space                              : YUV
    Chroma subsampling                       : 4:2:0
    Bit depth                                : 8 bits
    Bits/(Pixel*Frame)                       : 0.012
    Stream size                              : 596 MiB (94%)
    Codec configuration box                  : hvcC
    

    这配置如果是在 Windows 下肯定是没有问题的,Linux 按理说 AMD 的驱动已经打包进内核了,也不应该出现这种解码问题才对。

    13 条回复    2023-04-19 20:44:37 +08:00
    wangkun025
        1
    wangkun025  
       2023-01-16 09:30:43 +08:00 via Android
    用 mpv
    stkkm
        2
    stkkm  
       2023-01-16 09:42:07 +08:00
    很好奇,linux 有没有 windows 里的 mpc-hc+madVR 这种级别的视频播放方案?
    zwy100e72
        3
    zwy100e72  
       2023-01-16 09:44:17 +08:00   ❤️ 1
    我也没什么专业知识来分析这个问题,只好给你一些宽泛的建议(我用的 Archlinux ,下面以 ArchWiki 为主):

    1. 这里给出了一些硬件视频加速的 tips ,可以看下自己机器的硬件加速是否正确 https://wiki.archlinux.org/title/Hardware_video_acceleration
    2. 考虑用 mpv ,并且在开启 / 关闭 硬件加速的情况下测试 https://wiki.archlinux.org/title/Mpv
    3. 考虑制作一个 Windows-To-Go USB (虽然官方应该是不支持了但是 Rufus 还可以,可以通过 Windows 虚拟机直通 U 盘的玩法搞一个 WTG https://rufus.ie/en/ )然后在 Windows 下测试一遍
    prodan
        4
    prodan  
       2023-01-16 10:02:24 +08:00
    一直用 nextplayer ,可惜作者不更新了
    https://github.com/sudormroot/nextplayer-project
    tony1016
        5
    tony1016  
       2023-01-16 10:02:54 +08:00
    mpv ,打开 vaapi 支持就可以硬解
    janus77
        6
    janus77  
       2023-01-16 10:04:13 +08:00
    得看视频是不是用这张显卡硬解的
    lry
        7
    lry  
    OP
       2023-01-16 10:11:04 +08:00
    @wangkun025 mpv 确实比 vlc 好很多,默认配置播放正常。

    @zwy100e72

    mpv -v xx.mkv 默认不指定解码器的时候,应该是使用的软解没问题。

    ```
    [vd] Opening decoder hevc
    [vd] No hardware decoding requested.
    [vd] Using software decoding.
    [vd] Detected 24 logical cores.
    [vd] Requesting 16 threads for decoding.
    [vd] Selected codec: hevc (HEVC (High Efficiency Video Coding))
    ```

    mpv --hwdec=auto-copy xx.mkv 指定硬件解码的时候,还是有 vlc 一样的问题,色块。

    ```
    Using hardware decoding (vaapi-copy)
    ```

    可能安装 amf-amdgpu-pro 会有所改善
    lry
        8
    lry  
    OP
       2023-01-16 10:15:59 +08:00
    @tony1016 现在看起来就是 vaapi 硬件加速有问题。
    hahasong
        9
    hahasong  
       2023-01-16 10:34:51 +08:00
    用 mpv ,ctrl + H 打开硬解
    DefoliationM
        10
    DefoliationM  
       2023-01-16 10:37:30 +08:00
    用 mpv
    DeltaC
        11
    DeltaC  
       2023-01-16 12:28:27 +08:00
    之前看世界杯用的 smplayer ,就是界面梦回唐朝。

    实际上我还在 arch 上发现能和 windows 上 potplayer 一战的播放器,看片我都切到 windows 去看(双系统)。
    BRS5672023
        12
    BRS5672023  
       2023-01-20 17:23:55 +08:00
    <code>
    > cat .config/mpv/mpv.conf
    vo=gpu
    ao=pipewire
    hwdec=auto
    profile=gpu-hq
    #gpu-api=vulkan
    #gpu-context=waylandvk
    save-position-on-quit
    sub-auto=fuzzy
    volume-max=150
    af=acompressor
    #audio-spdif=ac3,eac3,dts-hd,truehd
    autofit-larger=90%x80%
    autofit-smaller=70%x60%
    </code>
    贴一个我自己用的配置文件,我发现用 hwdec=auto-copy 会疯狂掉帧( intel tiger lake 核显),或者你可以试试用 vulkan ?
    cyhulk
        13
    cyhulk  
       2023-04-19 20:44:37 +08:00
    ffplay 才是正解
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1136 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 22:46 · PVG 06:46 · LAX 14:46 · JFK 17:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.