Jus*_*ime 5 opengl-es objective-c avfoundation ios
视频处理的新手,我被困在这里几天.
我有一个CVVixelBufferRef,它是YUV(YCbCr 4:2:0)格式.我使用CVPixelBufferGetBaseAddress获取基地址.
如何获取基址的字节并创建一个新的CVPixelBufferRef,它也是同一个YUV格式?
我试过了:
CVPixelBufferCreateWithBytes(CFAllocatorGetDefault(), 1440, 900, kCVPixelFormatType_420YpCbCr8BiPlanarFullRange, currentFrame, 2208, NULL, NULL, (pixelBufferAttributes), &imageBuffer);
这创建了一个CVPixelBufferRef,但我不能用它做任何事情(即将它转换为CIImage,渲染它等).
最终,我的目标是从基地址调用获取我收到的字节,并在屏幕上显示它们.我知道我可以在没有基地址调用的情况下直接执行此操作,但我有一个限制,只允许我接收基址字节.
以供参考,
我无法从CVPixelBuffer获得CIImage的原因是因为它不是IOSurface支持的.要确保它支持IOSurface,请使用CVPixelBufferCreate,然后使用CVPixelBufferGetBaseAddress(如果是平面数据,则使用CVPixelBufferGetBaseAddressOfPlane)并将您的字节存入该地址.
希望这可以帮助将来的某个人.
| 归档时间: |
|
| 查看次数: |
2381 次 |
| 最近记录: |