Android RenderScript-toolkit库,替换老式的脚本方式(常用于高斯模糊)

此工具包提供了一系列高性能图像处理函数,例如模糊、混合和调整大小。它可以作为大多数已弃用的 RenderScript 内部函数的独立替代品。

支持16k page size

支持16k page size

支持16k page size

回顾 RenderScript Intrinsics

曾经我们要实现高斯模糊,都会用到RenderScript Intrinsics的方式。

老的方式,会用到如下配置:

markdown 复制代码
        android {
            compileSdkVersion 33

            defaultConfig {

                // 这里需要增加此项配置
                renderscriptTargetApi 19
                renderscriptSupportModeEnabled true
            }
        }

是否勾起了你的记忆。

使用方式我就不赘述了,不是本篇重点

过时的 RenderScript Intrinsics

以下摘抄自Google原文:

从 Android 12 开始,RenderScript API 已被废弃。设备和组件制造商已停止提供硬件加速支持,预计将在未来的版本中完全取消对 RenderScript 的支持。
在 Android 平台中废弃 RenderScript 后,将在 Android Gradle 插件中取消对 RenderScript 的支持。从 Android Gradle 插件 7.2 开始,废弃了 RenderScript API。它们会继续正常运行,但会产生警告。未来的 AGP 版本将不再支持 RenderScript。

官方迁移文档:从 Render​Script 迁移

Renderscrip-Toolkit

以下为官方翻译:

与 RenderScript Intrinsics 相比,此工具包使用起来更简单,在 CPU 上执行速度也快一倍。然而,RenderScript Intrinsics 在支持的分配类型方面提供了更大的灵活性。此工具包不支持浮点型分配;大多数函数支持字节数组 (ByteArray) 和位图 (Bitmap)。
该工具包提供 C++ 和 Java/Kotlin 接口。它被打包为一个 Android 库,您可以将其添加到您的项目中。

Google 提供了 Renderscrip-Toolkit 工具,但是只给了源代码,没有直接打包成aar提供使用,所以需要自行编译。

包含功能

  • 混合模式
  • 高斯模糊
  • 颜色矩阵滤镜
  • 盲卷积
  • 直方图和直方图点
  • LUT和LUT3D
  • 调整大小
  • YUV to RGB

添加依赖

scss 复制代码
implementation("io.github.limuyang2:renderscrip-toolkit:1.0.2")

使用方法

使用Toolkit调用各类方法。

kotlin 复制代码
// 例:高斯模糊
val newBitmap = Toolkit.blur(inputBitmap, 20)

// 剩下的可以直接查看 Toolkit 类中方法

项目地址

RenderScript-toolkit

相关推荐
行稳方能走远18 分钟前
Android java 学习笔记 1
android·java
zhimingwen19 分钟前
【開發筆記】修復 macOS 上 JADX 啟動崩潰並實現快速啟動
android·macos·反編譯
longxibo44 分钟前
mysql数据快速导入doris
android·大数据·python·mysql
十六年开源服务商1 小时前
WordPress网站模板设计完整指南
android
summerkissyou19871 小时前
Android13-Bluetooth-代码目录介绍
android·蓝牙
曾帅1681 小时前
uniapp安卓启动图
android·opencv·uni-app
_李小白1 小时前
【Android 美颜相机】第一天:认识Android-GPUImage项目
android·数码相机
Mr -老鬼2 小时前
谷歌安卓文档查询建议:优先使用英语页面的原因及实践指南
android
2501_915106322 小时前
常见 iOS 抓包工具的使用方式与组合思路
android·ios·小程序·https·uni-app·iphone·webview