Raspberry PI 4:Chromium硬件加速视频解码(GPU)

2020-10-11 15:28:32

两个月前,我写了一篇教程,解释如何在Raspberry PI上获得Chromium上的DRM支持。如果您遵循该教程的步骤:

您可以使用Chromium网络浏览器播放Netflix、Hulu、HBO、Disney+、Amazon Prime、Spotify、Pandora和许多其他网站的视频(参见图1和图2)。

这是一个很好的解决树莓PI上的DRM问题的方法!Chromium的视频播放质量如何?你知道它是使用硬件加速还是只使用CPU?

上周,我花了一些时间运行一些测试,并扩展了教程,添加了对视频解码硬件加速的支持。

要回答这个问题,视频播放质量很好,但是,默认情况下,Chromium使用软件(CPU)来解码视频。这意味着没有硬件加速。

您可能还会对本教程感兴趣:Raspberry PI 4:从启用了修剪的SSD引导。

您需要安装一些库,但首先,基本步骤是在终端上键入以下内容来更新系统:

为了能够激活硬件加速,我们首先需要启用3D视频驱动程序(所谓的伪KMS),然后将内存设置为例如128MB(这通常是默认值)。为此,请执行以下操作:

选择选项GL(伪KMS)带有伪KMS的OpenGL桌面驱动程序,然后单击确定。

注:如果您是此配置器的新手,可以使用键盘上的箭头和Tab键导航菜单。

Raspberry重新启动后,您可以检查3D驱动程序是否已加载并正常工作:

如果打开Chromium并转到Chrome://GPU,您仍然会看到图1。要更改这一点,我们需要转到Chrome://标志并搜索。

并将这些设置更改为启用(参见图4)。重启Web浏览器后,您可以刷新Chrome://GPU,您将看到图5。

在播放视频时,您可以使用硬件或软件检查Chrome://media-interals/URL来检查视频是否已解码。图6显示了软件解码器(更改前)。图7表明正在使用MmalVideoDecoder解码器(更改后)。这是Raspberry PI上用于H.264硬件加速的Broadcom库。

你仍然会偶尔感到屏幕撕裂。你可以在论坛主题上找到更多关于这方面的信息。

解决方案是禁用xcompmgr合成管理器。为此,您可以键入以下命令来移动/删除xcompmgr.ktop文件:

在Chromium中激活GPU加速后,我在尝试用高清摄像头拍照和播放一些YouTube视频时出现以下错误。

#raspistill-o/tmp/capture.jpgmmal:mmal_vc_component_enable:无法启用组件:ENOSPCmmal:无法启用摄像头组件mmal:main:无法创建摄像头组件mmal:无法运行摄像头应用。请检查固件更新。

我尽可能地描述了这个问题,因为我试图重现它,但没有再次收到错误。不过,我把它写在这里,以防有人需要处理它。