2013-12-18 19 views
0

我有一个需要录制视频的应用程序。下面的代码:iOS视频录制 - 只允许我拍照

- (IBAction)takeVideo:(UIButton *)sender 
{ 
    UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 
    picker.delegate = self; 
    picker.allowsEditing = YES; 
    picker.sourceType = UIImagePickerControllerSourceTypeCamera; 
    picker.mediaTypes = [[NSArray alloc] initWithObjects: (NSString *) kUTTypeMovie, nil]; 

    [self presentViewController:picker animated:YES completion:nil]; 
} 

它完美地在其他应用程序,但我目前的应用程序带来了相机,而且也没有记录按钮,只有图像拍摄按钮。我也注意到iOS相机应用失去了记录这种情况的能力。有任何想法吗?

回答

0

这个属性添加到您的选择器和 要指定所有可用的媒体类型的来源,使用如下语句:

picker.cameraCaptureMode = UIImagePickerControllerCameraCaptureModeVideo; picker.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType: UIImagePickerControllerSourceTypeCamera];

+0

没有工作,得到这个错误,“终止应用程序由于未捕获的异常'NSInvalidArgumentException',原因:'cameraCaptureMode 1不可用,因为mediaTypes确实包含public.movi​​e'”。奇怪的因为我能够记录public.movi​​e是一种媒体类型。 – user707666

+0

@ user707666你是否设法解决这个问题? – Nil

0

我有同样的问题,我发现如果你确定AVAudioSession类别是录制它将允许你录制视频。如果没有设置为它默认为静态照片捕食者

AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryRecord); 

我子类的UIImagePickerController和的loadView内设置的类别。

相关问题