标签存档: OpenGL

树莓派升值计划——流畅播放 30 帧 1080p 网页视频

TL;DR

在树莓派 4B (实测 4G 内存,目测 2G 够用) 上流畅播放网页视频需要使用 OpenGL 驱动,并将 PulseAudio 调整至使用中断而不是时钟。可选的性能提升有切换至 64 位内核以及超频,但这些只能轻微提升。

可以做到的效果是 YouTube、bilibili、爱奇艺播放 30 帧 1080p 的视频的时候视频没有大卡顿(主要是偶尔有撕裂),音频完全没有卡顿。

背景

树莓派是一款便宜的卡片尺寸的小电脑。但它体型虽小五脏俱全,可以运行完整的 Linux 系统。最新的顶配版本树莓派 4B 4G 内存版仅需 55 美元,实乃便宜好用的码农玩具。考虑到它的价格,只要能实现任意一个「实用」功能就称得上是回本,而这次我想要让它「物超所值」——接在电视上播放 1080p 在线视频。

小道消息:据说树莓派是亏本卖的

树莓派一出现其实就打着可以充当视频播放器的招牌,但实际上它的实现与日常使用差距很大——早先树莓派只支持 OpenGL ES,并且视频硬解必须使用它的闭源驱动,这导致只有少数做了适配的软件可以充分利用树莓派独特的硬件资源,例如 Kodi 和 SteamLink(强烈安利,可香了,当年沉迷在客厅下自走棋)。说它硬件资源独特是因为它有着孱弱的 CPU 和难以利用的 GPU,以及非常局限的内存(1G)。而这一切随着树莓派 4 的到来不再是问题——CPU 增强,OpenGL 驱动成熟(顺带也解决了 64 位内核的驱动问题),以及 4G 内存版本的出现。

这让我重新捡起了曾经用树莓派代替上网本(即升值计划)的尝试。我的目标只有一个——能看 YouTube 视频。

继续阅读 »

正确配置 vc4-fkms-v3d 驱动,避免使用 llvmpipe

vc4-fkms-v3d 是树莓派的开源 GPU 驱动,支持 OpenGL 2.1。正确配置的情况下 mesa 应该使用 V3D 驱动而不是 llvmpipe,后者使用的是 CPU。树莓派本来就贫弱的 CPU 并不经得起桌面渲染的折腾。此外 Chrome 也应能打开大多数硬件加速。

首先需要切换到开源驱动。前往 raspi-config -> Advanced Options -> GL Driver -> GL (Fake KMS)。树莓派 4 是默认使用这个开源驱动的。

继续阅读 »