Android - Signal 11, RS CPP error: Blur radius out of 0-25 pixel bound

19

When upgrading my application to run on 4.4.2 devices I received the error

RS CPP error: Blur radius out of 0-25 pixel bound

accompanied by a Signal 11 (native code) error:

Fatal signal 11 (SIGSEGV) at 0x00000028 (code=1)

The root of this issue took me a long time to locate with no results on Google or stack overflow and a search of my code for any use of 'blur' not revealing anything.

android
asked on Stack Overflow Apr 13, 2014 by Nick Cardoso

3 Answers

37

Eventually I did manage to track the problem, which was in my styles.xml - in one place I used

<item name="android:shadowRadius">30</item>

on a style extending android:TextAppearance.Holo.Widget.TextView. The fix for this issue was just to use a value within the range stated in the error, e.g.

<item name="android:shadowRadius">25</item>

I hope this helps somebody else with a similar problem from having to spend a long time locating their issue!

answered on Stack Overflow Apr 13, 2014 by Nick Cardoso
9

This also happens if you specify the shadowRadius in dp and the converted pixel radius is higher than 25.

So for example if you specify your radius to be 8dp and run the app on a xxxhdpi device (density multiplier 4), the effective radius in pixels is 32.

answered on Stack Overflow Oct 6, 2015 by P.Melch
5

If you need to go higher than a 25 pixel blur radius, then you can turn off hardware rendering.

android:layerType="software"

or

myView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

See the Hardware acceleration documentation.

In my experience, turning off the "acceleration" didn't seem to negatively affect the performance for my particular app. However, there was a slightly noticeable difference in the quality of the blur.

With hardware rendering:

enter image description here

With software rendering:

enter image description here

(The two images above were taken from a Xiaomi 2 phone running Android 5. Newer hardware and software might give different results.)

This quality hit is undesirable but I found it to be acceptable for most cases. And there really wasn't another option since in addition to the above crash I was getting a lot of other very strange bugs when using hardware acceleration.

answered on Stack Overflow Sep 25, 2018 by Suragch • edited Sep 26, 2018 by Suragch

User contributions licensed under CC BY-SA 3.0