缘由
显卡硬件加速可以显著的提升渲染速度,减少软件渲染比例,减少 CPU占用。而在 Linux 上,为 AMD 显卡(包括APU)启用加速可能需要额外的设定。本文运行环境为 Archlinux + AMD APU,其他 vendor 的设定参数可能类似,请自行测试。
正确安装显卡驱动
若你的显卡(包括APU)vendor 为 AMD,你可以使用官方提供的 AMDGPU-Pro 驱动安装,相关 AUR 地址为 amf-amdgpu-pro,安装完成后,你可能需要重启并进行有效性测试。
编辑 Chrome 的启动参数
在 Archlinux 上,使用 AUR 进行安装的 Chrome 会在启动时自动载入位于 ~/.config/chrome-flags.conf
的参数。以下为参数示例。
#~/.config/chrome-flags.conf
--ignore-gpu-blocklist
--enable-gpu-rasterization
--enable-zero-copy
--enable-features=VaapiVideoDecodeLinuxGL
--enable-features=VaapiIgnoreDriverChecks
--disable-features=UseChromeOSDirectVideoDecoder
--enable-features=VaapiVideoDecoder,VaapiIgnoreDriverChecks,Vulkan,DefaultANGLEVulkan,VulkanFromANGLE
Code language: PHP (php)
验证 Chrome 图形特性状态
你可以进入 chrome://gpu/ 进行查看,以下为成功的示例输出。
Graphics Feature Status
=======================
* Canvas: Hardware accelerated
* Direct Rendering Display Compositor: Disabled
* Compositing: Hardware accelerated
* Multiple Raster Threads: Enabled
* OpenGL: Enabled
* Rasterization: Hardware accelerated on all pages
* Raw Draw: Disabled
* Skia Graphite: Disabled
* TreesInViz: Disabled
* Video Decode: Hardware accelerated
* Video Encode: Software only. Hardware acceleration disabled
* Vulkan: Enabled
* WebGL: Hardware accelerated
* WebGL2: Hardware accelerated
* WebGPU: Disabled
* WebNN: Disabled
验证 Chrome 视频播放硬件加速
你可以在其他标签页播放视频,让其保留后台,进入 chrome://media-internals/ 进行查看,以下为成功的示例输出。
Player Properties
=======================
render_id: 320
player_id: 2
created: 2025-07-19 05:42:57.480506 UTC
origin_url: https://test-videos.co.uk/
kFrameUrl: https://test-videos.co.uk/vids/bigbuckbunny/mp4/h264/1080/Big_Buck_Bunny_1080_10s_5MB.mp4
kFrameTitle:
url: https://test-videos.co.uk/vids/bigbuckbunny/mp4/h264/1080/Big_Buck_Bunny_1080_10s_5MB.mp4
kTotalBytes: 0x4fefba
kIsStreaming: false
kIsSingleOrigin: true
kIsRangeHeaderSupported: true
kRendererName: RendererImpl
pipeline_state: kSuspended
info: Selected VaapiVideoDecoder for video decoding, config: codec: h264, profile: h264 high, level: not available, alpha_mode: is_opaque, coded size: [1920,1080], visible rect: [0,0,1920,1080], natural size: [1920,1080], has extra data: true, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED}
kAudioTracks:
kVideoTracks: [object Object]
kMaxDuration: 10
kStartTime: 0
kBitrate: 4190971
kIsVideoDecryptingDemuxerStream: false
kVideoDecoderName: VaapiVideoDecoder
kIsPlatformVideoDecoder: true
dimensions: 1920x1080
kResolution: 1920x1080
duration: 10
pipeline_buffering_state: [object Object]
event: kSuspended
Code language: JavaScript (javascript)
关注名为 kVideoDecoderName
的参数,若使用 VaapiVideoDecoder
即为成功。
注意,示例输出播放的视频为 h264
编码,一些新的编码格式,如 av1
,可能需要更新的显卡(或APU),才能支持,对应的硬件加速 kVideoDecoderName
不唯一。
推荐的视频测试网站:https://test-videos.co.uk/,请播放使用不同编码的视频查看日志输出。
大功告成
现在,你的 Chrome 已能成功使用硬件加速。
了解 Starx's Home 的更多信息
订阅后即可通过电子邮件收到最新文章。