树莓派流畅播放 bilibili1080p 视频

本文最后更新于 2023年8月22日 下午

树莓派…yyds?

主要问题

在树莓派系统内置 chromium 浏览器播放 bilibili1080p 视频时会出现让人无法接受的卡顿。
然而这广大的互联网竟没有一篇教程的容身之地。
于是经过我一两天的折磨解决问题后我决定赶紧记录下来以防我忘记。

配置信息

  • 树莓派 4b 4GB内存
  • Raspberry Pi OS(legacy)
    认准Buster

解决方案

实际上我也不知道我做的步骤中哪些有用哪些没用,但是可以确定的是全部做完百分百有用,所以让我们放弃一点效率吧。


首先下载 screenfetch

1
pi@raspberrypi:~ $ sudo apt install screenfetch

运行

1
pi@raspberrypi:~ $ screenfetch

会显示以下界面
screenfetch
检查一下系统配置是否正确。


随后进入浏览器,在地址栏中输入

1
chrome://flags

随后搜索Hardware-accelerated video decode,并将目标改为enable
如图

继续搜索#ignore-gpu-blocklist,同样改为enabled

重启浏览器后,在地址栏中输入:

1
chrome://gpu

以下是应该显示的界面

界面

这之后,我们就可以兴奋的打开 bilibili,随机点开一个幸运视频,然后惊喜的发现还是卡的让人无法接受。

这是因为还没有更改视频编码。

点击更多播放设置
更改播放设置为HEVC

尽管已经可以流畅播放,但是丢帧情况依然无法避免,可以通过右键视频打开视频统计信息,来查看丟帧率,以下是我的测试。

测试中记录每2000帧中丢失帧的数量,数值越小播放越流畅。连续播放8000帧

在1080p画质下全屏播放新番《群青开场号》

AV1 HEVC AVC
281 64 18
126 0 0
116 0 0
177 0 0

在1080p高码率画质下全屏播放新番《群青开场号》

AV1(有画面撕裂) HEVC(有画面撕裂) AVC (有画面撕裂)
335 24 9
308 0 0
23 0 0
null 0 0

可以看到的是,avi格式基本不能用,而在1080p和高码率的对比中,对然丟帧情况相差无几,但是高码率的画面撕裂情况明显更严重。至于HEVC和AVC的区别,目前看来AVC播放视频是更稳定,不过实际上两种编码差距很小。
补充的是,长时间播放视频后,播放视频的表现更好,可能是因为熟能生巧吧。开玩笑的,也许是因为cpu的频率更高了。

更推荐的做法

虽然但是,体验更好的做法是下载视频至本地用内置的VLC播放器观看,不会有任何卡顿和撕裂,不过网页视频还是有自己的独特魅力在的,不过补一些老番的话试试本地下载又何尝不可呢?


树莓派流畅播放 bilibili1080p 视频
https://bainianlaoyao.github.io/2022/08/16/typecho-recovered-40-树莓派流畅播放bilibili1080p视频/
作者
百年老妖
发布于
2022年8月16日
许可协议