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

2023-01-16 09:16:15 +08:00
 lry

我的电脑配置如下

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 的驱动已经打包进内核了,也不应该出现这种解码问题才对。

3158 次点击
所在节点    Linux
13 条回复
wangkun025
2023-01-16 09:30:43 +08:00
用 mpv
stkkm
2023-01-16 09:42:07 +08:00
很好奇,linux 有没有 windows 里的 mpc-hc+madVR 这种级别的视频播放方案?
zwy100e72
2023-01-16 09:44:17 +08:00
我也没什么专业知识来分析这个问题,只好给你一些宽泛的建议(我用的 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
2023-01-16 10:02:24 +08:00
一直用 nextplayer ,可惜作者不更新了
https://github.com/sudormroot/nextplayer-project
tony1016
2023-01-16 10:02:54 +08:00
mpv ,打开 vaapi 支持就可以硬解
janus77
2023-01-16 10:04:13 +08:00
得看视频是不是用这张显卡硬解的
lry
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
2023-01-16 10:15:59 +08:00
@tony1016 现在看起来就是 vaapi 硬件加速有问题。
hahasong
2023-01-16 10:34:51 +08:00
用 mpv ,ctrl + H 打开硬解
DefoliationM
2023-01-16 10:37:30 +08:00
用 mpv
DeltaC
2023-01-16 12:28:27 +08:00
之前看世界杯用的 smplayer ,就是界面梦回唐朝。

实际上我还在 arch 上发现能和 windows 上 potplayer 一战的播放器,看片我都切到 windows 去看(双系统)。
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
2023-04-19 20:44:37 +08:00
ffplay 才是正解

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/909177

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX