香橙派rk3588编程mpp解码rga拼接转格式opengles渲染的多路视频播放器32路测试
演示效果
https://www.bilibili.com/video/BV1rL7SzTEcY/
1080p@30 码率2554kbps
注意 这是远程桌面 会比实际接屏幕效果差一些
性能
cpu 160%(满载800%)
mem 56% 4.39GB (用户空间才占500MB 但是内核空间可能已经占了几G)
rga rga3_core0:65% rga3_core1:53% rga2:10%
gpu 21%
温度 73度

实现方案
ffmpeg拉流rtsp获得h265 为了传输稳定配置rtsp over tcp
mpp解码h265获得nv12 注意解码器会有帧长度对齐
rga拼接合成 将解码获得的nv12放缩 裁剪 然后拼接 将32路图像帧合成一帧
rga转换nv12成rgb
opengles对接X11渲染rgb 使用pbo双缓冲提高内存加载到GPU的效率
与上次16路相比区别主要是
rga处理顺序调整 提高处理效率
mpp解码为265 一个反常识的知识 一般解码265比解码264快 实测解码1080P@30 在h264时最多16路 在h265时最多32路
环境
主控 rk3588
板卡 香橙派5 ultra
系统 ubuntu桌面

浙公网安备 33010602011771号