我使用 AVFoundation 从相机中以 kCVPixelFormatType_420YpCbCr8BiPlanarFullRange 格式拍摄静止图像。我从缓冲区获取所有数据,我想将它传递给另一个视图控制器。
我有一个uint8_t *yBuffer;
并且我将此指针传递给(didCaptureImage:withYBuffer:)
当前控制器的委托方法。
另一个控制器将其变量设置uint8_t *YBuffer
为从委托接收到的变量。
问题是在新控制器中复制 YBuffer 后,我尝试修改数组中的值,它给了我错误EXC_BAD_ACCESS (code=1, address=0x104e40010)
我尝试调试,在我看来,新控制器中的 YBuffer 指针存储来自委托控制器的 YBuffer 值,直到委托从内存中释放。
委托释放前新控制器中 YBuffer 的值:"/87/34/45/76..and so on"
委托释放后新控制器中 YBuffer 的值:""
它只是空引号。
也许问题是我复制uint8_t
数组的方式?请有人指导我正确的方向。谢谢