我正在尝试使用本机函数处理从MediaMetadataretriever抓取的帧中的位图。但我发生致命的撞车事件
SIGNAL 11 (SIGSEGV) at 0x422d8f20 (code=2)
SIGNAL 11 (SIGSEGV) at 0x42311320 (code=2)
我尝试登录以查看它出错的地方。当我调用本机函数时,它似乎崩溃了。下面是我调用本机函数的函数。
protected Bitmap processFrame(Bitmap l_frame) {
WarnC='a';
int[] rgba = mRGBA;
byte[] src_array =stream;
ByteArrayOutputStream src_stream = new ByteArrayOutputStream();
l_frame.compress(Bitmap.CompressFormat.PNG, 0, src_stream);
src_array = src_stream.toByteArray();
Log.i("test", "ok");
WarnC= processcaller.LaneDetection(mFrameWidth, mFrameHeight, src_array, rgba);
Bitmap bmp = g_frame;
bmp.setPixels(rgba, 0/* offset */, mFrameWidth /* stride */, 0, 0, mFrameWidth,mFrameHeight);
rgba =null;
src_array=null;
return bmp;
}
崩溃信号在Log.i("test","ok");
之后发出
我在网上搜索并看到大多数人说它是分段错误,可能是因为调用了未初始化或不存在的函数。但是通过我的代码扫描,我找不到任何一个。有什么指针吗?