更新时间:2021-03-18 GMT+08:00
分享

HFBC格式介绍

HFBC格式是一种数据压缩格式,是VDEC解码后输出的每一帧数据的格式,而对此格式进行解压缩由VPC完成,因VDEC和VPC是两个独立模块,所以用户在使用过程中可以看到HFBC数据。

  • 为什么要有HFBC格式?

因为VDEC解码每一帧后,将此帧图像进行HFBC压缩之后再写入内存,既可以降低写入内存的数据量,又可以减少输出此帧的耗时,从而获取更高解码性能。

举例:如下图,比如此帧图像分辨率为1920*1080,正常一帧图像大小为1920*1080*3/2=3110400‬B,所以需要写入内存的数据量为3110400B,而经过HFBC压缩后(一般压缩率为50%),写入内存数据量仅有1555200B,所以既减少了写入内存的数据量,也减少了写入内存的耗时,从而性能更高。

  • 怎么使用HFBC格式更优?

    因用户最终需要的是YUV数据,而VDEC输出的是HFBC数据,所以用户需要调用VPC模块对HFBC数据进行解压缩得到YUV数据。而一般场景下,用户最终想要的是送入网络大小的图(比如224x224),并不是原始图像(比如1920x1080),所以当VDEC解码后输出每帧HFBC数据后,用户可以将HFBC数据送入VPC并同时配置好resize/crop参数,驱使VPC直接输出需要的图像数据,即一次性完成【HFBC解压缩+resize/crop】操作,这样是最佳使用方式。

    若用户需要原始图像,则VDEC输出HFBC格式相比VDEC直接输出YUV格式并没有优势(因为VDEC输出HFBC后,还需要VPC读入HFBC数据解压缩后再输出YUV数据),但当前芯片VDEC不能直接输出YUV数据,所以只能使用HFBC格式数据给VPC进行处理。

分享:

    相关文档

    相关产品

close