我有一个应用程序,我需要录制视频。这是代码:
- (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 :(得分:0)
将此属性添加到您的选择器和 要为源指定所有可用的媒体类型,请使用如下语句:
picker.cameraCaptureMode = UIImagePickerControllerCameraCaptureModeVideo; picker.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType: UIImagePickerControllerSourceTypeCamera];
答案 1 :(得分:0)
我遇到了同样的问题,我发现如果你确保AVAudioSession类别是Record,它将允许你录制视频。如果没有设置为默认为静态照片捕获器
AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryRecord);
我将UIImagePickerController子类化,并在LoadView内部设置类别。