kCVPixelFormatType_420YpCbCr8BiPlanarFullRange
フォーマット(YCC420f
または)の CIImage がありますN12
。イメージがどのように見えるかを確認したいので、次のメソッドを使用して UIImage に変換します。
CIImage *ciImage = [CIImage imageWithCVPixelBuffer:new_buffer];
CIContext *temporaryContext = [CIContext contextWithOptions:nil];
CGImageRef videoImage = [temporaryContext
createCGImage:ciImage
fromRect:CGRectMake(0, 0,
CVPixelBufferGetWidth(new_buffer),
CVPixelBufferGetHeight(new_buffer))];
UIImage *uiImage = [UIImage imageWithCGImage:videoImage];
画像の形式が の場合は正常に動作しますが、コンソールのエラー メッセージは ではBGRA
ありません:NV12
Render failed because a pixel format YCC420f is not supported.
ところで、ciimage は CVPixelBufferRef から取得され、CVPixelBufferRef は GL テクスチャのアドレスから取得されます。
さて、私は何をすべきですか?