clEnqueueWriteImage returns -5

clEnqueueWriteImage returns -5

本文关键字:returns clEnqueueWriteImage      更新时间:2023-10-16

如果我尝试将数据上传到图像缓冲区,函数clEnqueueWriteImage返回-5。该错误没有在OpenCL规范中指定。有什么问题吗?命令队列、内存对象和数据看起来很棒。阻塞设置为true

我的c++代码是这样的:

m_NativeImage = clCreateImage2D(_rContext, _MemoryFlag, &m_NativeImageFormat, m_Width, m_Height, 0, NULL, &Error);
size_t Origin[] = {0,0,0};        
size_t Region[] = {m_Width, m_Height, 1}; // Size of object to be transferred
Error = clEnqueueWriteImage(m_NativeCommandQueue, m_NativeImage, _Blocking, Origin, Region, 0, 0, _pData, 0, 0, 0);   

好的。这是我声明的图像格式的问题。我用CL_UNORM_INT8,但它必须是CL_UNORM_SHORT_565。谢谢你的帮助!

看这个:http://www.khronos.org/registry/cl/sdk/1.0/docs/man/xhtml/cl_image_format.html