Вы можете использовать AVFoundation, чтобы сделать это. Хорошей отправной точкой является просмотр видео WWDC (с 2011 года), связанного с AVFoundation и Camera.
Apple example code for AVCam project - очень хорошая отправная точка.
Вот пример того, что вы можете сделать.
Прежде всего, необходимо создать экземпляр сеанса записи:
AVCaptureSession *session = [[AVCaptureSession alloc] init];
session.sessionPreset = AVCaptureSessionPreset1280x720;
Затем вы должны создать вход и добавить его на сессии, чтобы получить изображения с камеры устройства:
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
NSError *error = nil;
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error];
if (!input) {
NSLog(@"Couldn't create video capture device");
}
[session addInput:input];
Тогда вы используете AVCaptureVideoPreviewLayer для представления на изображении изображений с камеры устройства:
AVCaptureVideoPreviewLayer *newCaptureVideoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session];
Наконец, вам просто нужно установить фрейм (часть пользовательского интерфейса, который вам нужен) этого конкретного слоя, и добавить его в нужный вид и начать захват сеанса.
@ user1354603Вы должны создать оверлей камеры. –
Я полностью не согласен со «слишком широким» рейтингом. Это * = ТОЧНО = * мой вопрос (что понятно любому программисту iOS, который его пробовал), и ответ идеально подходит ** в формате SO. (У меня теперь есть рабочий код. Я бы хотел добавить его в качестве ответа.) Пожалуйста, откройте его снова. – Olie