从PNG文件的UIImage制作时,视频的颜色是错误的

lil*_*lzz 9 iphone video

我从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和其他人,它没有帮助.

有什么想法吗?

Usm*_*.3D 1

请验证您的 PNG 图像是否带有或不带有透明元素。如果您的 PNG 图像不包含透明度,那么它是每像素 24 位而不是 32 位。

另外,您尝试过 kCVPixelFormatType_32RGBA 吗?