我正在尝试通过使用 AVAssetReaderVideoCompositionOutput 作为帧输入将 GPUImage 库中的 GPUImageMovie 扩展到 AVComposition。但是当到达时:
- (void)processMovieFrame:(CMSampleBufferRef)movieSampleBuffer {
..
CVReturn err = CVOpenGLESTextureCacheCreateTextureFromImage(kCFAllocatorDefault,
coreVideoTextureCache, movieFrame, NULL, GL_TEXTURE_2D, GL_RGBA, bufferWidth,
bufferHeight, GL_BGRA, GL_UNSIGNED_BYTE, 0, &texture);
...
我得到:无法创建 IOSurface 图像(纹理)电影 CVOpenGLESTextureCacheCreateTextureFromImage 失败(错误:-6683)
结果是:kCVReturnPixelBufferNotOpenGLCompatible -6683
由于不支持的缓冲区大小、像素格式或属性,像素缓冲区与 OpenGL 不兼容。适用于 iOS 4.0 及更高版本
有任何想法吗?谢谢