2013-11-21 68 views
0

嗨我正在開發一個應用程序,它有一個條形掃描選項,所以我使用zbar,但我使我自己的相機視圖端口和圖像發送到zbar掃描儀,但我需要以編程方式縮放相機我需要光學變焦。我能夠做數字變焦,但我需要光學變焦選項。任何幫助? 爲了製作相機視口,我使用AVCaptureSession。這裏是我的代碼ios使用AVCaptureSession的光學變焦

-(void)initializecam{ 
AVCaptureSession *session = [[AVCaptureSession alloc] init]; 
//session.sessionPreset = AVCaptureSessionPresetMedium; 
session.sessionPreset = AVCaptureSessionPresetPhoto; 

AVCaptureVideoPreviewLayer *captureVideoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session]; 

captureVideoPreviewLayer.frame = self.vImagePreview.bounds; 
[captureVideoPreviewLayer setVideoGravity:AVLayerVideoGravityResizeAspectFill]; 


[self.vImagePreview.layer addSublayer:captureVideoPreviewLayer]; 

AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo]; 

NSError *error = nil; 
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error]; 
if (!input) { 
    // Handle the error appropriately. 
    NSLog(@"ERROR: trying to open camera: %@", error); 
} 
[session addInput:input]; 
_stillImageOutput = [[AVCaptureStillImageOutput alloc] init]; 
NSDictionary *outputSettings = [[NSDictionary alloc] initWithObjectsAndKeys: AVVideoCodecJPEG, AVVideoCodecKey, nil]; 
[_stillImageOutput setOutputSettings:outputSettings]; 

[session addOutput:_stillImageOutput]; 
[session startRunning]; 
} 

回答

0

你不能使用光學變焦,因爲目前在iOS設備中沒有這種東西。只看了最新的iPhone 5s,只有數碼變焦。所以你需要外部設備來使用光學變焦。

+0

您能否提供一個鏈接,指出iPhone 5 – souvickcse

+0

@souvickcse http://support.apple.com/kb/SP655 – juniperi