6
Jak przekonwertować CVPixelBufferRef na NSImage lub CGImageRef? Muszę być w stanie wyświetlić zawartość bufora pikseli w warstwie Core Animation.CVPixelBufferRef to NSImage
Jak przekonwertować CVPixelBufferRef na NSImage lub CGImageRef? Muszę być w stanie wyświetlić zawartość bufora pikseli w warstwie Core Animation.CVPixelBufferRef to NSImage
Aby przekonwertować bufor na obraz, należy najpierw przekonwertować bufor na CIImage
, który następnie można przekonwertować na NSImage
.
let ciImage = CIImage(cvImageBuffer: pixelBuffer)
let context = CIContext(options: nil)
Stąd można przejść zarówno GCImage
i NSImage
:
let width = CVPixelBufferGetWidth(pixelBuffer)
let height = CVPixelBufferGetHeight(pixelBuffer)
let cgImage = context.createCGImage(ciImage, from: CGRect(x: 0, y: 0, width: width, height: height))
let nsImage = NSImage(cgImage: cgImage, size: CGSize(width: width, height: height))