RGA (Raster Graphic Acceleration Unit)是一个独立的2D硬件加速器,可用于加速点/线绘制,执行图像缩放、旋转、bitBlt、alpha混合等常见的2D图形操作。本仓库代码实现了RGA用户空间驱动,并提供了一系列2D图形操作API。
RGA API 版本: 1.8.0
Rockchip RK3066 | RK3188 | RK2926 | RK2928 | RK3026 | RK3028 | RK3128 | Sofia3gr | RK3288 | RK3288w | RK3190 | RK1108 | RK3368 | RK3326 | RK3228 | RK3228H | RK3326 | RK1808 | RV1126 | RV1109 | RK3399 | RK3399pro | RK3566 | RK3568 | RK3588 | RK3326S | RV1106 | RV1103
core: RGA用户空间驱动实现
include: 相关头文件
im2d_api: RGA API相关实现及头文件
docs: RGA API说明文档、RGA FAQ
samples: librga使用例程
samples/sample_file:示例图片
下载librga仓库拷贝至android源码工程 hardware/rockchip目录,执行**mm**进行编译。根据不同的Android版本将自动选择Android.mk或Android.bp作为编译脚本。
修改librga源码根目录下的文件**cmake-android.sh**。执行以下操作完成编译:
$ chmod +x ./cmake-android.sh
$ ./cmake-android.sh
[编译选项]
修改librga源码根目录下的**buildroot.cmake**文件。执行以下脚本完成编译:
$ chmod +x ./cmake-android.sh
$ ./cmake-linux.sh
[编译选项]
librga提供了meson.build,最新buildroot支持meson 编译。单独编译可以使用meson.sh 脚本进行config,需要自行修改meson.sh 内指定install 路径,以及PATH等环境变量,cross目录下是交叉编译工具配置文件,也需要自行修改为对应交叉编译工具路径。
执行以下操作完成编译:
$ ./meson.sh
$ ninja -C build-rga install
头文件引用
C++调用im2d api
im2d_api/im2d.hpp
C调用im2d api
im2d_api/im2d.h
库文件
librga.so
librga.a