# 更新日志 ## 1.9.3 (2023-06-28) 该版本RGA驱动建议更新至1.2.27及以上版本,最低支持1.2.4。 ### 优化 - 补充对samples目录下示例代码功能说明。 - 增加RK_FORMAT_XX格式的描述。 ### 修复 - 修复FBC输入对实宽、实高的过度约束。(驱动须更新至1.2.27) - 修复示例代码中部分笔误。 ## 1.9.2 (2023-04-13) 该版本RGA驱动建议更新至1.2.25及以上版本,最低支持1.2.4。 ### 新增 - 补全对FBC/TILE8×8 限制的检查。 - 增加FBC/Tile8×8的示例代码。 - 增加在不支持UV均值下采样的芯片上针对YUV422->YUV420场景下采样方法的示例代码。 ### 优化 - 移除对libdrm.so的依赖,避免受libdrm版本影响导致编译失败。 ### 修复 - 修复immakeBorder()配置top/bottom/left/right为0时输出画面异常。 - 修复部分fill/color_palette模式无法返回release_fence fd的问题。 ## 1.9.1 (2023-02-06) 该版本RGA驱动建议更新至1.2.24及以上版本,最低支持1.2.4。 ### 新增 - 新增支持芯片RK3562。 - 增加TILE8x8、FBC示例代码。 ### 优化 - 编译阶段无需依赖libdrm.so。 - 完善TILE8x8、FBC的参数限制。 ### 修复 - 修复TILE8x8格式运行异常问题。(驱动须更新至1.2.24) - 修复 imcheckHeader() 在编译C程序时的报错。 - 修复meson无法编译librga。 ## 1.9.0 (2022-12-20) 该版本RGA驱动建议更新至1.2.22及以上版本,最低支持1.2.4。 ### 新增 - 新增支持芯片RK3528。 - 适配Android 12 gralloc 0.3 - 新增头文件校验接口。 - 新增批处理接口(im2d_task.h)。 - 新增数组模式接口。 - 新增padding接口。 - 支持通过Android属性/环境变量动态的开启/关闭 librga 运行日志。 - 增加对drm_fourcc格式支持。 - 增加示例代码单独编译说明。 - 增加多种常见场景示例代码。 - allocator_demo - alpha_demo - async_demo - config_demo - copy_demo - crop_demo - cvtcolor_demo - fill_demo - mosaic_demo - resize_demo - rop_demo - transform_demo - padding_demo ### 优化 - 兼容rga2 driver、multi_rga driver。 - 优化librga与驱动之间版本校验机制。 - 优化头文件结构。 - 头文件添加更多描述信息。 - 优化cmake编译脚本。 ### 修复 - 修复RGA3 dst-over模式对YUV格式处理异常问题。 ## 1.8.1 (2022-06-20) ### 修复 - 更正wrapbuffer_handle宏函数与C++函数定义不同的问题,更正后与宏函数传参相同。。 - 修复部分编译warning。 ## 1.8.0 (2022-05-25) 该版本RGA驱动须更新至1.2.6。 ### 新增 - 新增支持芯片RK3326S、RV1106、RV1103。 - 增加英文说明文档。 - 增加马赛克、OSD接口(部分芯片支持)。 - 支持Rockit-ko在内核的调用。 - 新增importbuffer接口支持使用buffer_size作为传参(RGA驱动1.2.9及以上版本支持)。 - 增加默认编译静态库、动态库。 ### 优化 - 针对部分接口的异常返回,增加更多的报错信息。 ### 修复 - 更正文档中部分描述。 - 修复部分格式无法importbuffer的问题。 ## 1.7.2 (2022-01-20) 该版本RGA驱动须更新至1.2.6。 ### 新增 - Android/Linux平台支持异步模式。 - 支持多硬件约束条件融合校验。 - 增加librga对驱动版本校验功能。 - 支持查询RGA负载。 - 针对外部buffer增加import/release接口。 ### 优化 - 优化cmake编译脚本。 - 异步模式支持查询指定任务完成情况。 ### 变更 - C++接口实现与C实现隔离。 - librga支持12及以前的Android版本。 ### 修复 - 修复软件信号导致异常退出的问题。 ### 移除 - 弃用genversion.sh ## 1.6.0 (2021-11-23) ### 新增 - 支持RGA3硬件。 - 增加任务核心指定、优先级配置。 - 异步模式引入fence机制。 - utils支持AFBC图像的读写。 - 3588 RGA支持ROP功能。 - CMAKE编译支持C接口。 ### 变更 - 驱动支持变更为 multi_rga。 - improcess增加传参:input_fence_fd、output_fence_fd、im_opt_t结构体。 - imsync增加传参:release_fence_fd。 - im2d_api 中 color/colorkey/nn/rop 模式将通过 im_opt_t 结构体进行配置。 - Linux平台暂时不支持Async模式。 - 头文件的数据类型与驱动重新对齐。(头文件存在修改) ### 修复 - 改正部分错误的格式命名。 - 更正YUYV420的像素大小。 - 修改宏函数内临时变量名称,避免非预期错误。 ## 1.4.0 (2021-11-10) ### 新增 - 支持Android 12编译。 ### 变更 - RockchipRga接口demo目录变更: librga/sample/ -> librga/sample/legacy/。 ## 1.3.1 (2021-11-05) ### 新增 - 支持ARGB4444/5551/8888、XRGB8888格式。(该功能有对应kernel提交) ### 优化 - 支持SDK通过CMAKE编译librga。 ### 修复 - 修复部分已知问题。 - 修复搭载RGA1的平台调用librga时出现内核报错的问题。 - 解决BGR565、BGRA4444、BGRA5551格式转换颜色异常的问题。 - 修复IM2D API中设置globalAlpha后导致混合效果异常的问题。 - 修复部分crop场景imcheck无法正确校验的问题。 - 解决rgaImDemo fill模式异常报错的问题。 ## 1.3.0 (2021-08-05) ### 新增 - 完善三通道模式src1通道参数校验。 - 增加usage —— IM_ASYNC ### 变更 - 更正IM_SYNC语意,原语意为 “标识本次RGA操作需要同步” ,与同步模式存在歧义,修改如下: 传参 sync = 1 为同步模式, usage配置IM_SYNC; 传参 sync = 0 为异步模式, usage配置IM_ASYNC。 ### 修复 - 解决三通道模式Alpha叠加场景中复合旋转显示异常的问题。 ## 1.2.6 (2021-08-02) ### 新增 - 支持BGR565、BGRA5551、BGRA4444格式。(该功能有对应kernel提交) ### 优化 - 优化部分内部逻辑。 ### 修复 - 更正引用rga.h时可能会出现的编译报错。 - 更正docs/RGA_API_Instruction.md中部分芯片型号的硬件支持信息。 - 避免RockchipRga单例被异常销毁后可能引发的错误。 ### 移除 - 部分功能中无用的日志打印。 ## 1.2.5 (2021-07-08) ### 新增 - docs/RGA_FAQ.md。 - 三通道模式混合支持配置每条通道的CSC。 ### 变更 - RGA硬件版本规则更改。 - docs/README.md重命名为docs/RGA_API_Instruction.md。 ### 优化 - RGA硬件版本信息管理。 - RGA硬件功能校验。 - 更加完善明了的报错信息。 ### 修复 - IMStrError() 线程安全。 - 修正RGA API开发指南中关于图像合成的错误描述。 ## 1.2.4 (2021-06-01) ### 新增 - 405(src over)/504(dst over)两种预乘Alpha的混合模式。 - im2d api支持配置src/src1/dst图层自身的色域空间。 ## 1.2.3 (2021-05-31) ### 新增 - 支持full csc模式。 ### 变更 - 更正debian版本号。 ## 1.2.2 (2021-04-26) ### 新增 - im2d api文档中增加版本号管理介绍。 - src支持直接读取256阶灰度图,并对灰度图进行缩放、裁剪等功能。(该功能有对应kernel提交) ### 修复 - im2d api中CSC模式错误的定义。 - 使用meson编译无法向下兼容的问题。 ### 移除 - 一些无用打印。 - 对于旋转模式不合理的校验。 ## 1.2.0 (2021-04-26) ### 新增 * im2d api支持ROP。 * sample目录下增加示例图片。 * 支持Gralloc4.0。 * rgaImDemo的循环选项和打印预期选项。 * color key功能。 * color fill支持YUV格式。 * 对RGA1的校验。 * 多种方式查询librga版本号。 * CHANGLOG.md。 ### 变更 * 部分定义的索引值。 * 更新im2d api说明文档。 * 使用Apache-2.0 license。 * imresize()使用系数进行缩放时使用向下对齐。 * 取消全局初始化。 * librga版本号的管理。 ### 优化 * 整合不同版本Android平台源码。 * 兼容Android、Linux平台。 * C_API的易用性。 * librga图像格式与Android平台图像格式兼容。 * imStrError()内存使用上的风险。 * 兼容两种同步/异步的配置方法。 * rgaSlt demo中支持配置虚拟地址和fd。 * rgaSlt demo返回报错值。 * 获取硬件支持信息的逻辑。 * imcheck()校验功能的可扩展性。 * rotate功能与mirror功能可以同时配置。 * nn_quantize功能与Alpha混合功能可以同时配置。 ### 修复 * 修复一些已知错误。 * 在一些旧版本的Android的编译问题。 * C_API向下兼容问题。 * YUV对齐width stride只支持4对齐问题。 * A+B->C模式color space异常的问题。 ### 移除 * 一些无效的定义。 * 对libhardware的依赖。 * makefile编译。 * librga初始化的打印。 * C_API对RGA模块的初始化。 ## 1.1.1 (2020-11-12) ### 新增 * color palette功能。 * 支持A+B->C模式进行Alpha混合。 * src、dst、dst over Alpha混合模式。 * 输入格式YUYV422,输出格式YUYV422/420支。 * 输出格式Y400、Y4、Y1。 * wrapbuffer_handle api。 * meson支持编译im2d demo。 ### 变更 * license变更。 ### 优化 * librga版本管理机制。 * Android NDK编译。 ### 修复 * 虚拟地址调用RGA结果输出黑线的问题(cache)。 * 修复一些已知错误。 ## 1.0.3 (2020-09-18) ### 新增 * 在原本librga的代码基础上封装im2d api。 * 增加meson、cmake的编译支持。 ### 变更 * 修改C_API的实现逻辑。 ### 优化 * 整合源代码,使Linux和Android共用同一套源码。 ## 1.0.0 (2020-06-03) ### 新增 * 移植librga到Android Q。