9

AVCaptureSession&を使用してAVCapturePhotoOutput、デバイスのカメラから RAW 写真データをkCVPixelFormatType_14Bayer_RGGB形式でキャプチャしています。

AVCapturePhotoCaptureDelegateコールバックで生の写真のサンプル バッファを取得するところまで来ました。

func capture(captureOutput: AVCapturePhotoOutput,
             didFinishProcessingRawPhotoSampleBuffer rawSampleBuffer: CMSampleBuffer?,
             previewPhotoSampleBuffer: CMSampleBuffer?,
             resolvedSettings: AVCaptureResolvedPhotoSettings,
             bracketSettings: AVCaptureBracketedStillImageSettings?,
             error: Error?) {

  guard let rawSampleBuffer = rawSampleBuffer else { return }

  guard let pixelBuffer = CMSampleBufferGetImageBuffer(rawSampleBuffer) else { return }
}

現在、この質問への回答に従ってからピクセル値を取得しようとしていますが、回答にCVPixelBufferRef記載されている 32 ビット RGB 形式ではなく、14 ビット Bayer RGGB ピクセル形式を使用する場合、これを行う方法がわかりません。

4

1 に答える 1