项目实战:海思Hifb开发

        本文主要描述编写Hifb应用程序启动fb0使其能够正常显示图形界面,下文以正常显示QT界面为例。

一、修改sample_hifb.c

Hi3519AV100的SDK提供的sample_hifb.c中包含太多不要的功能,我们只保留标准模式就好。

修改SAMPLE_HIFB_StandardMode函数只启动图层0。

然后将分辨率改为800*600,原本例程是1920*1080的分辨率。

配置虚拟分辨率与显示分辨率一致。

在绘制代码部分,编写死循环直到输入字符‘q’退出程序关闭Hifb。

二、加载hifb驱动模块

        加载hifb.ko可以配置显存的大小,配置的最小值为虚拟分辨率wight*high*bpp,bpp是每个像素所占的字节数,hifb.ko在SDK的/smp/a53_linux/mpp/ko文件夹中。

        以闸机QT分辨率800*600来计算,分配ram大小为600*800*4/1024 = 1875KB,所以加载时insmod video="hifb:vram0_size:1875"。

三、QT界面显示

在运行sample_hifb之后运行QT程序我们会发现图形输出的大小依然不对。

修改VO模块enIntSync接口时序为800*600的,原本接口时序配置为1920*1080的。

修改之后,运行sample_hifb后运行QT程序,QT大小调用接口使其自适应屏幕大小,然后可以看到图形输出大小是正常的。

发布了36 篇原创文章 · 获赞 4 · 访问量 2798

猜你喜欢

转载自blog.csdn.net/qq845699/article/details/104152633