我的相机应用程序捕捉照片,以某种方式增强并保存它。
为此,我以 CVPixelBuffer(包装在 CMSampleBuffer 中)的形式从相机获取输入图像。我对像素缓冲区进行了一些修改,然后我想将其转换为 Data 对象。我该怎么做呢?
请注意,我不想将像素缓冲区/图像缓冲区转换为 UIImage 或 CGImage,因为它们没有元数据(如 EXIF)。我需要一个数据对象。如何从 CVPixelBuffer / CVImageBuffer 中获取一个?
PS:我试过打电话AVCapturePhotoOutput.jpegPhotoDataRepresentation()
,但没有说“不是JPEG样本缓冲区”。这是有道理的,因为 CMSampleBuffer 包含一个像素缓冲区(位图),而不是 JPEG。