AV框架前置摄像头问题



你好,我正在使用AV框架尝试访问前置摄像头。。。

这是我这样做的代码。

+ (AVCaptureDevice *)camera
{
 NSArray *devices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo];
for (AVCaptureDevice *device in devices) {
    if ([device position] == AVCaptureDevicePositionFront) {
        NSLog(@"Device Position is :%i",device.position);
        return device;
    }
}
return nil;
}

NSLog告诉我我在第二个位置,但我屏幕上显示的视频仍然是从后面。。。有什么建议吗?

- (AVCaptureDevice *)frontFacingCameraIfAvailable
{
    NSArray *videoDevices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo];
        AVCaptureDevice *captureDevice = nil;
for (AVCaptureDevice *device in videoDevices) 
{
   if (device.position == AVCaptureDevicePositionFron 
      {
            captureDevice = device;
            break;
        }
    }
//  couldn't find one on the front, so just get the default video device.
    if (!captureDevice)
    {
        captureDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
    }
    return captureDevice;
}

AVCaptureDevice *captureDevice = nil;  
if(frontCamera == true){  
    captureDevice = [self frontFacingCameraIfAvailable];  
}
captureInput = [AVCaptureDeviceInput   
            deviceInputWithDevice:captureDevice   
            error:nil];   

最新更新