| Name | Date | Size | #Lines | LOC | ||
|---|---|---|---|---|---|---|
| .. | - | - | ||||
| cmake/ | H | 05-Jun-2025 | - | 25 | 20 | |
| core/ | H | 05-Jun-2025 | - | 10,281 | 6,486 | |
| cross/ | H | 05-Jun-2025 | - | 34 | 28 | |
| debian/ | H | 05-Jun-2025 | - | 112 | 86 | |
| docs/ | H | 05-Jun-2025 | - | 9,480 | 6,606 | |
| im2d_api/ | H | 05-Jun-2025 | - | 7,305 | 4,745 | |
| include/ | H | 05-Jun-2025 | - | 1,206 | 678 | |
| samples/ | H | 05-Jun-2025 | - | 35,528 | 20,758 | |
| toolchains/ | H | 05-Jun-2025 | - | 28 | 21 | |
| Android.bp | H A D | 05-Jun-2025 | 1.7 KiB | 74 | 67 | |
| Android.go | H A D | 05-Jun-2025 | 4.6 KiB | 162 | 126 | |
| Android.mk | H A D | 05-Jun-2025 | 8 KiB | 268 | 186 | |
| CHANGELOG.md | H A D | 05-Jun-2025 | 9.3 KiB | 430 | 264 | |
| CMakeLists.txt | H A D | 05-Jun-2025 | 4.5 KiB | 157 | 127 | |
| COPYING | H A D | 05-Jun-2025 | 11.1 KiB | 205 | 169 | |
| README.md | H A D | 05-Jun-2025 | 4.3 KiB | 127 | 78 | |
| cmake-android.sh | H A D | 05-Jun-2025 | 502 | 25 | 16 | |
| cmake-linux.sh | H A D | 05-Jun-2025 | 488 | 25 | 16 | |
| meson.build | H A D | 05-Jun-2025 | 2.2 KiB | 90 | 80 | |
| meson.sh | H A D | 05-Jun-2025 | 387 | 16 | 8 | |
| meson_options.txt | H A D | 05-Jun-2025 | 280 | 5 | 4 |
README.md
1# librga 2 3RGA (Raster Graphic Acceleration Unit)是一个独立的2D硬件加速器,可用于加速点/线绘制,执行图像缩放、旋转、bitBlt、alpha混合等常见的2D图形操作。本仓库代码实现了RGA用户空间驱动,并提供了一系列2D图形操作API。 4 5## 版本说明 6 7**RGA API** 版本: 1.9.3 8 9## 适用芯片平台 10 11Rockchip 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 | RK3528 | RK3562 12 13## 目录说明 14 15├── **im2d_api**:RGA API相关实现及头文件<br/> 16├── **include**:RGA硬件相关头文件<br/> 17├── **core**:RGA用户空间驱动实现<br/> 18├── **docs**:FAQ以及API说明文档<br/> 19├── **samples**:示例代码<br/> 20├── **toolchains**:示例工具链配置文件<br/> 21└──其余编译相关文件<br/> 22 23## 编译说明 24 25### Android Source Project 26 27 下载librga仓库拷贝至android源码工程 hardware/rockchip目录,配置好编译环境后,执行**mm**进行编译,根据不同的Android版本将自动选择Android.mk或Android.bp作为编译脚本。 28 29```bash 30$ mm -j16 31``` 32 33### CMAKE 34 35 本仓库示例代码支持CMAKE编译,可以通过修改toolchain_*.cmake文件以及编译脚本实现快速编译。 36 37#### 工具链修改 38 39- **Android NDK(build for android)** 40 41 参考librga源码目录下**toolchains/toolchain_android_ndk.cmake**写法,修改NDK路径、Android版本信息等。 42 43| 工具链选项 | 描述 | 44| ----------------------------------- | -------------------------------------------- | 45| CMAKE_ANDROID_NDK | NDK编译包路径 | 46| CMAKE_SYSTEM_NAME | 平台名,默认为Android | 47| CMAKE_SYSTEM_VERSION | Android版本 | 48| CMAKE_ANDROID_ARCH_ABI | 处理器版本 | 49| CMAKE_ANDROID_NDK_TOOLCHAIN_VERSION | 工具链选择(clang/gcc) | 50| CMAKE_ANDROID_STL_TYPE | NDK C++库的链接方式(c++_static/c++_shared) | 51 52- **Linux(buildroot/debian)** 53 54 参考librga源码目录下**toolchains/toolchain_linux.cmake**写法,修改工具链路径、名称。 55 56| 工具链选项 | 描述 | 57| -------------- | ---------- | 58| TOOLCHAIN_HOME | 工具链目录 | 59| TOOLCHAIN_NAME | 工具链名称 | 60 61#### 编译脚本修改 62 63 修改samples目录或需要编译的示例代码目录下**cmake_*.sh**,指定toolchain路径。 64 65| 编译选项 | 描述 | 66| -------------- | ------------------------------------------------------------ | 67| TOOLCHAIN_PATH | toolchain的绝对路径,即《工具链修改》小节中修改后的toolchain_*.cmake文件的绝对路径 | 68| LIBRGA_PATH | 需要链接的librga.so的绝对路径,默认为librga cmake编译时的默认打包路径 | 69| BUILD_DIR | 编译生成文件存放的相对路径 | 70 71#### 执行编译脚本 72 73- **Android NDK(build for android)** 74 75```bash 76$ chmod +x ./cmake_android.sh 77$ ./cmake_android.sh 78``` 79 80- **Linux(buildroot/debian)** 81 82```bash 83$ chmod +x ./cmake_linux.sh 84$ ./cmake_linux.sh 85``` 86 87### Meson 88 89 本仓库提供了meson.build,buildroot/debian支持meson编译。单独编译可以使用meson.sh 脚本进行config,需要自行修改meson.sh 内指定install 路径,以及PATH等环境变量,cross目录下是交叉编译工具配置文件,也需要自行修改为对应交叉编译工具路径。 90 91 执行以下操作完成编译: 92 93```bash 94$ ./meson.sh 95``` 96 97## 使用说明 98 99* **头文件引用** 100 101 * C++调用im2d api 102 103 im2d_api/im2d.hpp 104 105 * C调用im2d api 106 107 im2d_api/im2d.h 108 109* **库文件** 110 111 librga.so 112 113 librga.a 114 115* **librga应用开发接口说明文档** 116 117 [IM2D API说明文档【中文】](docs/Rockchip_Developer_Guide_RGA_CN.md) 118 119 [IM2D API说明文档【英文】](docs/Rockchip_Developer_Guide_RGA_EN.md) 120 121* **RGA模块FAQ文档** 122 123 [RGA_FAQ【中文】](docs/Rockchip_FAQ_RGA_CN.md) 124 125 [RGA_FAQ【英文】](docs/Rockchip_FAQ_RGA_EN.md) 126 127