我从Png文件中获取UIImage并将其提供给videoWriter.
avAdaptor appendPixelBuffer:pixelBuffer
当最终结果视频出来时,它似乎缺少一种颜色,缺少黄色或其他东西.
我采用了使像素缓冲区脱离UIImage的功能
CVPixelBufferCreateWithBytes(NULL,
myWidth,
myHeight,
kCVPixelFormatType_32BGRA,
(void*)CFDataGetBytePtr(image),
CGImageGetBytesPerRow(cgImage),
NULL,
0,
NULL,
&pixelBuffer);
Run Code Online (Sandbox Code Playgroud)
我也尝试了kCVPixelFormatType_32AGRB和其他人,它没有帮助.
有什么想法吗?
请验证您的 PNG 图像是否带有或不带有透明元素。如果您的 PNG 图像不包含透明度,那么它是每像素 24 位而不是 32 位。
另外,您尝试过 kCVPixelFormatType_32RGBA 吗?