que estoy tratando de conseguir tan buena como sea posible una imagen de la cámara, pero sólo puedo encontrar ejemplos que captureStillImageAsynchronouslyFromConnection
y luego ir directamente a:captureStillImageAsynchronouslyFromConnection sin JPG intermediario
NSData *imageData = [AVCaptureStillImageOutput jpegStillImageNSDataRepresentation:imageSampleBuffer];
UIImage *image = [[UIImage alloc] initWithData:imageData];
JPEG estar con pérdida y todo, es hay alguna manera de obtener los datos como PNG, o incluso simplemente RGBA (BGRA, ¿qué-tienes-tú?). AVCaptureStillImageOutput no parecen tener ningún otro NSData * métodos ....
En realidad mirando el CMSampleBufferRef, parece que ya está bloqueado como JPEG ~
formatDescription = <CMVideoFormatDescription 0xfe5e1f0 [0x3e5ac650]> {
mediaType:'vide'
mediaSubType:'jpeg'
mediaSpecific: {
codecType: 'jpeg' dimensions: 2592 x 1936
}
extensions: {(null)}
}
¿Hay alguna otra manera de tomar una imagen de resolución completa y obtener los datos sin procesar?
Entonces, ¿cómo terminó obteniendo los datos para PNG? ¿Acabas de usar kCVPixelFormatType_32BGRA en lugar de kCMVideoCodecType_JPEG? – Crashalot
Sí ~ https://github.com/blindsightcorp/rawphoto-ios/blob/master/RawPhoto/CaptureSessionManager.m –
gracias, pero la línea 167 muestra que todavía está usando jpegStillImageNSDataRepresentation? ¿Cómo se convierte a PNG? – Crashalot