海思Hi3559移植Freetype、SDL、SDL-ttf,实现叠加字符OSD功能

针对海思Hi3559芯片的OSD叠加

网络上关于Hi3559芯片的OSD叠加字符信息比较少,很多描述其他类似芯片相关功能的博客,可以作为参考,但是如果想很快编译成功,实现功能,有时候真的是需要耐心。

参考博客

直接面向Hi3559 OSD叠加字符的文章目前我没有直接找到现成的,找到其他芯片可参考的,其中对我来说最重要的一片博客如下,仔细按照这篇博客的内容,稍加修改就可以改成Hi3559下的应用,博客地址https://blog.csdn.net/weixin_44362642/article/details/103469278:

  1. 各开源软件的版本 ,为了避免的不必要的反复,上面博客中的软件版本不要轻易改动。尤其是SDL的版本,由于目前SDL的版本已经升级到了SDL2了,这个版本的SDL与SDL1.2很多地方发生了变化,我尝试了移植SDL2,虽然移植成功了,但是由于对SDL并不熟悉,始终无法把SDL生成的字库透明的打到视频层上,因此如果大家重点并不是在开发SDL上,可以按照博客中的版本进行移植。;
  2. 相对博客中的改动:由于海思Hi3559芯片为arm64位的处理器,其编译器也变为aarch64-himix100-linux-gcc,因此博客中的configure后面的参数交叉编译器应该改为CC=aarch64-himix100-linux-gcc
  3. host指定 ,由于是交叉编译,因此在各个开源软件的configure中需要指定–host的主机类型,在SDL的configure时通常指定的后缀为–host=aarch64-himix100-linux,但是因为SDL的版本比较老,无法识别这样的主机名称,后来我查看configure的源文件,返现host只是告诉系统编译的时候是什么系统,后来我就手动把–host改为arm-hisiv500-linux,后来就编译成功了,然后将各个开源软件中生成的静态库路径添加到Makefile.param中,将各个开源软件中include下的文件拷贝到mpp\out\linux\multi-core\include,这样测试程序便可以找到。
    海思Hi3559移植Freetype、SDL、SDL-ttf,实现叠加字符OSD功能_第1张图片

你可能感兴趣的:(他山之石)