iOS视频录制 - 只允许我拍照

时间:2013-12-18 11:54:38

标签: ios objective-c video uiimagepickercontroller recording

我有一个应用程序,我需要录制视频。这是代码:

- (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相机应用程序在发生这种情况时失去了录制的能力。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

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

  

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

答案 1 :(得分:0)

我遇到了同样的问题,我发现如果你确保AVAudioSession类别是Record,它将允许你录制视频。如果没有设置为默认为静态照片捕获器

AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryRecord);

我将UIImagePickerController子类化,并在LoadView内部设置类别。