如何使用Objective-C在iPhone中录制视频?

时间:2011-05-09 10:16:37

标签: iphone objective-c video

我有一个地图应用程序,其中有一个名为video的按钮。如果用户点击视频按钮,他可以在他喜欢的任何位置录制视频,并同时播放视频。

我该怎么做?我的代码如下:

-(IBAction)video:(id)sender { UIImagePickerController *picker = [[UIImagePickerController alloc] init]; picker.delegate = self; NSArray *sourceTypes = [UIImagePickerController availableMediaTypesForSourceType:picker.sourceType]; if (![sourceTypes containsObject:(NSString *)kUTTypeMovie ]){ NSLog(@"device not supported"); return; } picker.sourceType = UIImagePickerControllerSourceTypeCamera; picker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeVideo]; picker.videoQuality = UIImagePickerControllerQualityTypeHigh; [self presentModalViewController:picker animated:YES]; } 

1 个答案:

答案 0 :(得分:1)

来自Apple Programming guides

  

从iPhone OS 3.0开始,你可以   录制包含音频的视频   支持的设备。要显示   视频录制界面,创建和   推送一个UIImagePickerController对象,   就像显示一样   静态相机界面。

     

要录制视频,必须先检查相机来源类型   (UIImagePickerControllerSourceTypeCamera)   是可用的,电影媒体   type(kUTTypeMovie)可用   相机。取决于媒体   您分配给mediaTypes的类型   物业,选择器可以直接   显示静态相机或视频   相机,或选择界面   让用户选择。

     

使用UIImagePickerControllerDelegate   协议,注册为代表   图像选择器。你的委托对象   收到完整的录像   通过   imagePickerController:didFinishPickingMediaWithInfo:   方法

     

在支持的设备上,您还可以从中选择以前录制的视频   用户的照片库。

     

有关使用图像选择器类的更多信息,请参阅   UIImagePickerController类   参考。有关修剪的信息   录制视频,请参阅   UIVideoEditorController类   参考和   UIVideoEditorControllerDelegate   协议参考。

在UIImagePickerController委托中拥有视频后,您可以使用标准文件操作将其保存到应用程序的文档目录中。