前言
最近在做一个基于RK3399的项目,要用到硬解码能力。RK3399的硬解码事基于MPP的,所以顺手测试了下H264的解码能力。之前网上找了很多资料都没有发现相关解码能力测测试,更多的是格式测试的比较多,今天自己亲自动手测试下还是吓了一跳,没想到RK3399居然有这么强的解码能力?
一、什么是MPP?
Media Process Platform (MPP) module directory description:
MPP : Media Process Platform
MPI : Media Process Interface
HAL : Hardware Abstract Layer
OSAL : Operation System Abstract Layer
二、开始测试
这里不用搭建环境,我买的是firefly的AIO-3399C不带AI的,默认MPP都是装好的,可以直接用。实际测试下来H264的解码能力在20路左右,分辨率是1080p的,每路平均帧率能达到大概34 fps。
一开始我对这个测试结果是持怀疑态度的,根据官方说法支持4k@60fps 10 bit的H264解码(没有说同时支持几路),那么换算成1080p@30fps的话就支持至少8路1080p@30fps的H264的解码了。况且官方标称是10 bit的,实际比8 bit的肯定还是消耗更多的性能的。
我们项目用不到编码,所以编码能力就没有测试。
总结
1、经过反复检查代码,我确定结果应当是无误的。
2、实际生产中用不到这么多路数,1是因为解码消耗cpu和mem的性能,如果同时解码太多势必会影响到其他任务的进行。
3、盒子本身没有独立NPU,面向的场景更像是电视盒子这一类的产品,对解码能力有一定的要求,对推理反而没什么要求的。
原作者:洛克希德马丁
|