1

こんにちは私は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は私がポジション2にいると言っていますが、画面に表示されているビデオはまだ後ろからです...何か提案はありますか?

4

1 に答える 1

2
- (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];   
于 2012-08-27T19:32:29.007 に答える