Toybrick

MPP解码MJPEG,CPU占用率很高,附代码求解答

zhangkt

注册会员

积分
131
楼主
发表于 2021-2-2 14:44:50    查看: 12588|回复: 4 | [复制链接]    打印 | 显示全部楼层
硬件:TB-RK3399ProD
环境:debian10
问题:
根据以下测试,mpp解码MJPEG,单核CPU占用率在70%以上,感觉不像是硬件解码该有的情况,可否帮忙看下是什么问题?


流程:
使用V4L2从USB摄像头读取图像帧数据(MJPEG 1920*1080), 将图像帧送入MPP解码(解码后格式NV12), 解码后保存到文件,成功解码

测试:
1.单核CPU占用率一直在80%以上


2.尝试不写入文件,对CPU占用率影响不大


3.中途有拷贝,仅拷贝不解码,查看结果(注:由于不解码,因此也不写入文件),单核CPU占用率14.5%



代码:
1.参考mpp例程mpi_dec_test.c 编写的
2.直接在debian10上编译
3.进入代码目录
mkdir build
cd build
make
sudo ./mjpegDecTest
(注:默认使用/dev/video0  分辨率1920*1080,可在主函数中修改)

问题:
根据以上测试,mpp解码MJPEG,单核CPU占用率在70%以上,感觉不像是硬件解码该有的情况,可否帮忙看下?
附上代码,若是代码编写的问题请告知下

代码附件:







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

zhangkt

注册会员

积分
131
沙发
 楼主| 发表于 2021-2-2 15:32:01 | 显示全部楼层
本帖最后由 zhangkt 于 2021-2-2 15:58 编辑
jefferyzhang 发表于 2021-2-2 14:49
CPU占用率请除以6.
Top显示的cpu占用率总数是600%(6核),你说的70%也就 70/600 = 11%左右,根本不算高。
关 ...

使用opencv解码MJPEG也是和这个占用率差不多,而H264的硬解码只要10%+,相较硬MJPEG解码差得有点多
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表