我正在尝试使用AVFoundation的AVCaptureVideoDataOutput录制视频并添加水印/标志。 我遇到的问题是UIImage的透明部分一旦写入视频就变成了黑色。我做错了什么?
CVPixelBufferRef pixelBuffer = CMSampleBufferGetImageBuffer(buffer);
抱歉,您需要提供需要翻译的具体内容。
CIImage *image = [[CIImage alloc] initWithData:logoData];
CVPixelBufferLockBaseAddress( pixelBuffer, 0 );
CIContext *ciContext = [CIContext contextWithOptions:nil];
CGColorSpaceRef cSpace = CGColorSpaceCreateDeviceRGB();
[ciContext render:image toCVPixelBuffer:pixelBuffer bounds:CGRectMake(image.extent.origin.x, image.extent.origin.y - 2, image.extent.size.width, image.extent.size.height) colorSpace:cSpace];
CVPixelBufferUnlockBaseAddress(pixelBuffer, 0);
CGColorSpaceRelease(cSpace);