Objective c - ios : How to pick video from Camera Roll?
Here is a compilation and cleanup of the answer above plus a few more details.
(0) Ensure you have these two includes.
#import <UIKit/UIKit.h>#import <MobileCoreServices/MobileCoreServices.h> // needed for video types
(1) Add two delegates to your .h file: UINavigationControllerDelegate and UIImagePickerControllerDelegate. For us, it looked like this:
@interface ATHViewController () <UITabBarDelegate, UINavigationControllerDelegate,UIImagePickerControllerDelegate>
(2) Present the user with choice of videos from their library. Add this code to your .m file somewhere.
// Present videos from which to choose UIImagePickerController *videoPicker = [[UIImagePickerController alloc] init]; videoPicker.delegate = self; // ensure you set the delegate so when a video is chosen the right method can be called videoPicker.modalPresentationStyle = UIModalPresentationCurrentContext; // This code ensures only videos are shown to the end user videoPicker.mediaTypes = @[(NSString*)kUTTypeMovie, (NSString*)kUTTypeAVIMovie, (NSString*)kUTTypeVideo, (NSString*)kUTTypeMPEG4]; videoPicker.videoQuality = UIImagePickerControllerQualityTypeHigh; [self presentViewController:videoPicker animated:YES completion:nil];
(3) Handle the responses from the picker. Add this code to your delegate class.
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { // This is the NSURL of the video object NSURL *videoURL = [info objectForKey:UIImagePickerControllerMediaURL]; NSLog(@"VideoURL = %@", videoURL); [picker dismissViewControllerAnimated:YES completion:NULL];}
(4) Handle when the user cancels choosing anything.
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker { [picker dismissViewControllerAnimated:YES completion:NULL];}
Please use the following code to select video from iOS gallery
UIImagePickerController *videoPicker = [[UIImagePickerController alloc] init];videoPicker.delegate = self;videoPicker.modalPresentationStyle = UIModalPresentationCurrentContext;videoPicker.mediaTypes =[UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypePhotoLibrary];videoPicker.mediaTypes = @[(NSString*)kUTTypeMovie, (NSString*)kUTTypeAVIMovie, (NSString*)kUTTypeVideo, (NSString*)kUTTypeMPEG4];videoPicker.videoQuality = UIImagePickerControllerQualityTypeHigh;[self presentViewController:videoPicker animated:YES completion:nil];
Please have a look at this link Select video from gallery