java - ScriptIntrinsicBlur 在 Galaxy S7 上的 API 24 上损坏了吗?

标签 java android android-support-library renderscript

我最近刚刚将 Galaxy S7 更新到 Android 7.0.0 并发现了一些奇怪的事情。

以前的工作 ScriptIntrinsicBlur 现在产生部分透明的结果。无论是 SupportLibrary 版本还是 native 版本。

我发现它取决于模糊半径,一般来说,半径越大,结果越不透明。

因此,我在一张完全不透明的图片上对 0 到 25(允许范围)像素的半径进行了扫描测试。

Android 模拟器 x86 API 24:

blurRad: 0.025 alpha: 254
...
blurRad: 25.0 alpha: 254

因此这会为所有半径创建一些透明度,但不会引人注意。

银河 S7,API 24,内部版本:NRD90M.G930FXXU1DQAO:

blurRad: 0.025 alpha: 10
...
blurRad: 0.25 alpha: 110
...
blurRad: 1.0 alpha: 241

Galaxy S7 alpha over blur radius

为了完整起见,我在带有 API 24 的 arm64 模拟器上运行了测试,它为所有半径生成了完全不透明的结果。

结果与要模糊的位图的大小及其内容无关(当然,只要源 alpha 为 255)

此外,我注意到 ScriptIntrinsicBlur 比以前慢 8-10 倍。即使在 HTC 上,我也可以用 800fps 模糊 400x400px 图像,而 Galaxy S7 (API 24) 只能达到 90-100fps。

所以问题是:有人可以重现这个吗?是否有解决方法?

最佳答案

Galaxy S7 的驱动程序中存在错误。这会影响配备 Mali GPU 的 S7 手机。拥有 Adreno GPU 的用户不受影响。即将发布更新。

关于java - ScriptIntrinsicBlur 在 Galaxy S7 上的 API 24 上损坏了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41976829/

相关文章:

java - 特定于国家/地区的 Google 地点自动完成服务(街道-城市-州-邮政编码)

java - Java的正则表达式引擎是否在内部优化了字符类表达式?

java - RelativeLayout 导致 Listview 滞后

android - 使用 android 和 parse.com 进行缓慢的数据检索

java - 读取assets中txt文件的一行

java - 通过 tcp 套接字从 java 服务器向 Android 客户端返回消息

android - support-library-v7 上的 ClassCastException,使用版本 21

Android:如何在首选项屏幕中禁用保留的图标空间

fragment 内的 Android 1.6 TabHost

java - 我正在尝试通过...(Java)确定结果左右两侧的位数