使用HIFB时屏幕颜色显示偏红异常问题
Posted 耳 东
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用HIFB时屏幕颜色显示偏红异常问题相关的知识,希望对你有一定的参考价值。
海思的mpp框架中对非编码的数据流的传输基本上都是使用yuv数据格式,hifb也不例外,在《HiMPP V4.0 媒体处理软件开发参考.pdf》中有提到对于MIPI输出的RGB数据而言,输出的数据将会被默认转化为YUV数据格式传输到显示设备,这就导致了屏幕显示颜色异常问题。
这时就需要调用 HI_MPI_VO_SetGraphicLayerCSC 去设置矩阵转换,将RGB数据保留输出,不进行转换,这里有提到说“该接口需要在图形层使能之后调用”也就是在 open fb 节点之后去调用
f_fbDev = open("/dev/fb0", O_RDWR | O_SYNC);
/*hi3516dv300默认fb图层RGB转换成YUV格式输出显示,所以lcd显示时要设置成不转换成YUV*/
VO_CSC_S pstCSC;
HI_MPI_VO_GetGraphicLayerCSC(0, &pstCSC);
pstCSC.enCscMatrix = VO_CSC_MATRIX_IDENTITY;
HI_MPI_VO_SetGraphicLayerCSC(0, &pstCSC);
打开 fb 节点设置完转换矩阵之后,剩下的就是使用 hifb 对 fb 节点的操作了。
以上是关于使用HIFB时屏幕颜色显示偏红异常问题的主要内容,如果未能解决你的问题,请参考以下文章