Мне нужно получить UIImage
от несжатый Данные изображения от CMSampleBufferRef. Я использую код:Захват еще UIImage без сжатия (из CMSampleBufferRef)?
captureStillImageOutput captureStillImageAsynchronouslyFromConnection:connection
completionHandler:^(CMSampleBufferRef imageSampleBuffer, NSError *error)
{
// that famous function from Apple docs found on a lot of websites
// does NOT work for still images
UIImage *capturedImage = [self imageFromSampleBuffer:imageSampleBuffer];
}
http://developer.apple.com/library/ios/#qa/qa1702/_index.html найти ссылку на imageFromSampleBuffer
функции.
Но он не работает должным образом. :(
Существует jpegStillImageNSDataRepresentation:imageSampleBuffer
метод, но он дает сжатые данные (хорошо, так как JPEG).
Как я могу получить UIImage
, созданный с помощью самых сырых несжатых данных после захвата неподвижных изображений?
Может быть, я должен указать некоторые параметры для вывода видео Я в настоящее время использую те:
captureStillImageOutput = [[AVCaptureStillImageOutput alloc] init];
captureStillImageOutput.outputSettings = @{ (id)kCVPixelBufferPixelFormatTypeKey : @(kCVPixelFormatType_32BGRA) };
Я заметил, что выход имеет значение по умолчанию для AVVideoCodecKey
, который AVVideoCodecJPEG
. Его можно избежать каким-либо образом, или действительно ли это имеет значение при съемке неподвижного изображения?
Я нашел что-то там: Raw image data from camera like "645 PRO", но мне нужен только UIImage, без использования OpenCV или OGLES или другого третьего лица.
Есть много подобных вопросов, с решениями здесь на SO. – Jeepston
@Jeepston не смог найти никаких рабочих изображений для фотографий ... – dreamzor