# librga **Repository Path**: tangerine_yun/librga ## Basic Information - **Project Name**: librga - **Description**: 官方rga - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2024-09-09 - **Last Updated**: 2025-01-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## librga RGA (Raster Graphic Acceleration Unit)是一个独立的2D硬件加速器,可用于加速点/线绘制,执行图像缩放、旋转、bitBlt、alpha混合等常见的2D图形操作。本仓库代码实现了RGA用户空间驱动,并提供了一系列2D图形操作API。 ### 版本说明 #### RGA API - 当前预编译仓库API版本:1.10.1 - 获取源码方式: - 同步SDK - Android SDK ``` /hardware/rockchip/librga ``` - 通用Linux SDK ``` /external/linux-rga ``` - 联想网盘 可通过以下链接选择对应版本源码更新至SDK对应目录下,或独立编译使用。 https://console.zbox.filez.com/l/fuGojC (提取码:rkrga) #### 驱动版本适配: - 详细的驱动版本查询方法可以查看 [Rockchip_Developer_Guide_RGA_CN](docs/Rockchip_Developer_Guide_RGA_CN.md) —— **版本说明章节** 常用命令如下: - 使用默认使能CONFIG_ROCKCHIP_RGA_DEBUG_FS编译选项的kernel。 ```shell cat /sys/kernel/debug/rkrga/driver_version ``` - 使能ROCKCHIP_RGA_PROC_FS编译选项的kernel。 ```shell cat /proc/rkrga/driver_version ``` - 当前API版本适配以下驱动: - RGA multicore Device Driver - 该版本驱动所有版本均支持获取版本号,最低适配1.2.4驱动版本,建议更新至1.2.23及以上驱动版本。 - RGA2 Device Driver - 支持兼容模式运行,API版本1.3.2以后新增接口无法使用,最佳兼容适配驱动版本为v2.1.0。 - RGA Device Driver - 支持兼容模式运行,API版本1.3.2以后新增接口无法使用。 - 可通过以下方式更新驱动: - 同步SDK - RGA multicore Device Driver 支持搭载RGA2/RGA3的芯片。 ``` /driver/video/rockchip/rga3 ``` - RGA2 Device Driver 搭载RGA2 的芯片支持 RGA2 Device Driver 和 RGA multicore Device Driver,部分早期发布固件均为 RGA2 Device Driver,较新的发布固件均为 RGA multicore Device Driver ,可选择更新为 RGA multicore Device Driver 或保持使用 RGA2 Device Driver RGA2 Device Driver路径: ``` /driver/video/rockchip/rga2 ``` - RGA Device Driver 搭载RGA1的芯片仅支持 RGA Device Driver。 ``` /driver/video/rockchip/rga3 ``` - 联想网盘 可通过以下链接选择对应版本驱动源码更新至SDK对应目录下。 https://console.zbox.filez.com/l/7oOrKO (提取码:rkrga) ### 适用芯片平台 Rockchip RK3128 | RK3126c | RK3288 | RK3288w | RV1108 | RK3368 | RK3326 | RK3228 | RK3228H | RK3326 | RK1808 | RV1126 | RV1109 | RK3399 | RK3399pro | RK3566 | RK3568 | RK3588 | RK3326S | RV1106 | RV1103 | RK3528 | RK3562 |RK3576 > 本仓库预编译文件只支持以下芯片平台,其他芯片平台可以使用SDK中源码进行编译。 Rockchip RK1808 | RV1126 | RV1109 | RK3399 | RK3399pro | RK3566 | RK3568 | RK3588 | RV1106 | RV1103 | RK3528 | RK3562 |RK3576 ### 目录说明 **libs**:预编译的librga库 - AndroidNdk - arm64-v8a: android-ndk-r16b编译,适用于64位Android系统,须匹配对应libc++_shared.so - armeabi-v7a: android-ndk-r16b编译,适用于32位Android系统,须匹配对应libc++_shared.so - Linux - gcc-aarch64: GCC-9.3编译,适用于64位Linux系统(适用于RK3588、RK3566、RK3568等芯片平台) - gcc-armhf: GCC-8.3编译,适用于32位Linux系统(适用于RK3588、RK3566、RK3568、RV1109、RV1126等芯片平台) - gcc-uclib-armhf:GCC-rockchip830-uclibc编译,适用于特定的使用uclibc的32位Linux系统(适用于RV1103、RV1106芯片平台) **include**:相关头文件 **docs**:API说明文档、FAQ **samples**:使用例程 - sample_file: 示例图片 **tools**:适用工具 - bin: 预编译的可执行demo ### 使用说明 * **头文件引用** * C++调用im2d api im2d.hpp * C调用im2d api im2d.h * **库文件** librga.so librga.a * librga应用开发接口说明参考以下文件: [IM2D API说明文档【中文】](docs/Rockchip_Developer_Guide_RGA_CN.md) [IM2D API说明文档【英文】](docs/Rockchip_Developer_Guide_RGA_EN.md) * RGA模块FAQ文档: [RGA_FAQ【中文】](docs/Rockchip_FAQ_RGA_CN.md) [RGA_FAQ【英文】](docs/Rockchip_FAQ_RGA_EN.md)