HarmonyOS 报错50001999

我这边从 nativeImage 中获取 nativeWindow,然后获取 buffer,最后映射到虚拟内存中。

代码大概如下

OHNativeWindow *nativeWindow = OH_NativeImage_AcquireNativeWindow(nativeImage_);

OHNativeWindowBuffer *windowBuffer;
int fd;
OH_NativeWindow_GetLastFlushedBufferV2(nativeWindow, &windowBuffer, &fd, matrix);
int32_t err = OH_NativeBuffer_FromNativeWindowBuffer(windowBuffer, &nativebuffer);
OH_NativeBuffer_GetConfig(nativebuffer, &bufferConfig);
OH_NativeBuffer_Planes ww;
void *addr;
int wee  = OH_NativeBuffer_MapPlanes(nativebuffer, &addr, &ww);

在模拟器中,bufferConfig 的 format 是 rgba 8888,stride 就是 width * 4,通过 OH_NativeBuffer_Map 访问虚拟内存获取图像信息

在真机中,bufferConfig 的 format 是 YUV420SP, 对于我 608 宽的图像,stride 是 640

我这边只需要访问 Y 数据,所以尝试用

OH_NativeBuffer_Planes ww;
void *addr;
int wee  = OH_NativeBuffer_MapPlanes(nativebuffer, &addr, &ww);

去映射,但一直失败,错误码是 50001999.

如果用 OH_NativeBuffer_Map ,则我不太了解内存中的布局是怎样的

请问下这个的正确用法是怎样的?

HarmonyOS
2025-01-09 13:46:37
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

YUV420SP不是linear格式,所以报了50001999的错误

获取对应像素的YUV值:

// 调用OH_NativeBuffer_Map 取到实际返回数据的首地址
void *virAddr = nullptr;
int32_t ret = OH_NativeBuffer_Map(nativeBuffer, &virAddr); // 映射后通过第二个参数virAddr返回内存的首地址
// 创建YUV Mat
cv::Mat yuv_mat(imgSizeRead.height, imgSizeRead.width, CV_8UC4, virAddr);
分享
微博
QQ
微信
回复
2025-01-09 16:42:21
相关问题
HarmonyOS 使用云存储接口报错报错
210浏览 • 1回复 待解决
HarmonyOS 首选项报错数据报错
358浏览 • 1回复 待解决
HarmonyOS getRawFileListSync报错
177浏览 • 1回复 待解决
HarmonyOS 引入报错
130浏览 • 1回复 待解决
HarmonyOS 报错2303501
296浏览 • 1回复 待解决
HarmonyOS 报错2300003
209浏览 • 1回复 待解决
HarmonyOS push报错
294浏览 • 1回复 待解决
HarmonyOS 导入ComponentContent报错
377浏览 • 1回复 待解决
HarmonyOS 调用agconnect,报错
379浏览 • 1回复 待解决
HarmonyOS previewer预览报错
283浏览 • 1回复 待解决
HarmonyOS Huks isKeyItemExist 报错
566浏览 • 1回复 待解决
HarmonyOS flutter build报错
479浏览 • 1回复 待解决
HarmonyOS 编译flutter报错
479浏览 • 1回复 待解决
HarmonyOS rn工程报错
501浏览 • 1回复 待解决
HarmonyOS 支付报错1001860002
505浏览 • 1回复 待解决
HarmonyOS http下载报错
367浏览 • 1回复 待解决
HarmonyOS router pushUrl报错
1103浏览 • 1回复 待解决
HarmonyOS 语音识别报错
384浏览 • 1回复 待解决
HarmonyOS 声明ability报错
292浏览 • 1回复 待解决
HarmonyOS IDE运行报错
454浏览 • 1回复 待解决
HarmonyOS 引入图片报错
244浏览 • 1回复 待解决
HarmonyOS IAP报错问题
448浏览 • 1回复 待解决
HarmonyOS 安装报错 9568306
263浏览 • 1回复 待解决
HarmonyOS getLastLocation报错3301200
182浏览 • 1回复 待解决
HarmonyOS录音报错问题
706浏览 • 1回复 待解决
提问
该提问已有0人参与 ,帮助了0人