我正在尝试从照片库中挑选视频。原则上我知道怎么做你将图像选择器的mediaType设置为NSArray,其中kUTTypeMovie是唯一的对象。 但这似乎不适用于iPhone 3G。从OS 3.1开始,您可以存储在照片库中收到的视频。当您在“照片”应用程序中开始构建时,会显示视频。但是,使用UIImagePickerController不起作用。控制器报告它仅支持图像。当您尝试使用kUTTypeMovie设置控制器的mediaType时,它实际上会崩溃。
如果您未指定媒体类型,则只有图像显示在选择器中。
有人设法从照片库中挑选视频吗?如果是,它只适用于3gs或3G吗?
此致
本
答案 0 :(得分:5)
我让imagepicker工作在3g和3gs上来挑选视频。
NSArray *mediaTypesAllowed = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
[imgPicker setMediaTypes:mediaTypesAllowed];
获取所选视频
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{
NSString *mediaType = [info valueForKey:UIImagePickerControllerMediaType];
if([mediaType isEqualToString:@"public.movie"]){...}
}
答案 1 :(得分:3)
嘿,我也无法使用上面提到的代码在3G上获取电影对象。它在我的3G上崩溃了。然而它适用于我的3GS,但问题是它显示了照片库中图像和电影的混合。我尝试了以下代码:
videoPickerCtrl.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
NSArray *mediaTypesAllowed = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
在运行OS 3.1.2的3GS上,它显示了我的照片库中存储的视频和图像。
然而,如果我尝试执行以下操作:
videoPickerCtrl.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
NSArray *mediaTypesAllowed = [NSArray arrayWithObject:@"public.movie"];
[videoPickerCtrl setMediaTypes:mediaTypesAllowed];
然后它显示的是存储在相机胶卷中的视频,没有其他内容。有人可以帮忙吗?