Android Renderscript致命信号11(SIGSEGV)代码1(SEGV_MAPERR)故障地址

Android Renderscript致命信号11(SIGSEGV)代码1(SEGV_MAPERR)故障地址,android,android-ndk,rgb,renderscript,yuv,Android,Android Ndk,Rgb,Renderscript,Yuv,我正在使用camera2 API获取格式为ImageFormat.YUV_420_888的图像流。我需要使用需要以RGB字节数组形式发送图像的库对它们进行一些处理(因此字节数组长度=宽度*高度*3) 我使用(可能还有所有其他方法)将图像转换为RGB字节数组(这似乎可以工作,至少结果字节数组是我需要的) 此外,以下是我在Kotlin中将YUV_420转换为RGB时使用的代码,并进行了一些更新: 问题是,经过几次尝试后,转换崩溃,tid 20776(软件包名称)中出现消息A/libc:Fatal s

我正在使用camera2 API获取格式为
ImageFormat.YUV_420_888
的图像流。我需要使用需要以RGB字节数组形式发送图像的库对它们进行一些处理(因此
字节数组长度=宽度*高度*3

我使用(可能还有所有其他方法)将图像转换为RGB字节数组(这似乎可以工作,至少结果字节数组是我需要的)

此外,以下是我在Kotlin中将YUV_420转换为RGB时使用的代码,并进行了一些更新:

问题是,经过几次尝试后,转换崩溃,tid 20776(软件包名称)中出现消息
A/libc:Fatal signal 11(SIGSEGV)、代码1(SEGV_MAPERR)、fault addr 0xe00000084、pid 20776

我尝试过其他图像格式,其他转换,但似乎没有任何效果-我要么遇到相同的崩溃(当使用YUV_420或NV21时),要么无法获得正确的图像/转换

有一件事似乎很有帮助: 使用
android:hardwareAccelerated=“false”
比使用
android:hardwareAccelerated=“true”


我不知道这是否有助于我在您的示例代码中注意到的事情:

  • 您在使用完分配之前销毁了分配(可以像rs上下文一样重用)
  • 您可以定义和设置默认启动选项(不需要)