RenderScript 我的用处
- 图片处理:把预览帧的YUV转为RGB,生成Bitmap对象
- 已知是TextureView.getBitmap最快,但使用OpenGLSurfaceView可能就只是回调获取YUV数据了,这种情景 RenderScript就派上用场了
- 做高斯模糊效果,做旋转Bitmap
简单记下
- RenderScript在Android 12 depreciate了,推荐你用 跨平台GPU计算的Vulkan
- RenderScript还是可以用,但可能运行在CPU上,当然具体看驱动
- 为了版本兼容
- Android 9 (API level 28) 和更低版本,用RenderScript
- Android 10 (API level 29) 和更高版本,用Vulkan
- Vulkan目前没有kotlin、java上的API,需要使用NDK创建JNI方法去操作 Vulkan code
- A Vulkan compute shader is commonly written in OpenGL Shading Language (GLSL) and then compiled to the Standard Portable Intermediate Representation-V (SPIR-V) format.
用处
复杂、可并发的计算
- Blend
- Blur
- Color matrix
- Convolve
- Histogram and histogramDot
- Lookup table (LUT) and LUT 3D
- Resize
- YUV to RGB