Запустите несколько сеансов AVCaptureSessions или добавьте несколько входов

Я хочу отобразить поток с передней и задней камеры iPad2 в двух UIView рядом друг с другом. Для потоковой передачи изображения с одного устройства я использую следующий код

AVCaptureDeviceInput *captureInputFront = [AVCaptureDeviceInput deviceInputWithDevice:[AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo] error:nil];

AVCaptureSession *session = [[AVCaptureSession alloc] init];
session addInput:captureInputFront];
session setSessionPreset:AVCaptureSessionPresetMedium];
session startRunning];

AVCaptureVideoPreviewLayer *prevLayer = [AVCaptureVideoPreviewLayer layerWithSession:session];
prevLayer.frame = self.view.frame;
[self.view.layer addSublayer:prevLayer];

, который отлично работает для любой камеры. Для параллельного отображения потока я попытался создать еще одну сессию, но как только устанавливается 2-я сессия, первая зависает.

Затем я попытался добавить в сеанс два входа AVCaptureDeviceInput, но похоже, что на данный момент поддерживается не более одного входа.

Есть полезные идеи, как транслировать с обеих камер?

16
задан jfischer 17 June 2012 в 12:13
поделиться