How to select only video file using pickerview in iphone sdk?
You can use UIImagePickerController class as below to select only videofiles from library
UIImagePickerController * picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
picker.mediaTypes = [[NSArray alloc] initWithObjects: (NSString *) kUTTypeMovie, nil];
Related
I am accessing default camera in my app.Sometimes it is displaying black screen.What is the solution for this problem?.
if ([UIImagePickerController isSourceTypeAvailable:
UIImagePickerControllerSourceTypeCamera])
{
imgPicker = [[UIImagePickerController alloc] init];
imgPicker.delegate = self;
imgPicker.sourceType = UIImagePickerControllerSourceTypeCamera;
// imagePicker.mediaTypes = [NSArray arrayWithObjects:(NSString *) kUTTypeImage, nil];
imgPicker.allowsEditing = NO;
imgPicker.showsCameraControls = NO;
cameraView.backgroundColor = [UIColor clearColor];
imgPicker.cameraOverlayView = cameraView;
[self presentModalViewController:imgPicker animated:YES];
}
I think the issue is with the way you present the UIImagePickerController instance:
UIImagePickerController * imagePicker = [[UIImagePickerController alloc] init];
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.delegate = self;
[self presentModalViewController:imagePicker animated:YES];
// [picker release];
How can i record video
UIImagePickerController *imagePickerController = [[UIImagePickerController alloc] init];
imagePickerController.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePickerController.allowsEditing = YES;
imagePickerController.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeMovie];
imagePickerController.delegate = self;
[self presentModalViewController:imagePickerController animated:YES];
[imagePickerController release];
i tried this one but i am getting image capture and i am not getting video capture.
#import <MobileCoreServices/UTCoreTypes.h>
-(void)actionStartVideoRecord:(id)sender {
if (![UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]){
return;
}
UIImagePickerController* imagePicker = [[[UIImagePickerController alloc] init] autorelease];
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.videoQuality = UIImagePickerControllerQualityTypeHigh;
imagePicker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeMovie];
imagePicker.delegate = self;
[self presentModalViewController:imagePicker animated:YES];
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
NSString *mType = [info valueForKey:UIImagePickerControllerMediaType];
if([mType isEqualToString:#"public.movie"]){
[NSData dataWithContentsOfURL:[info objectForKey:#"UIImagePickerControllerMediaURL"]]
}
}
Once the imagePickerController is presented, start the videoCapture of the device.
For more info, see doc for UIImagePickerController
You can make a subclass of UIImagePickerController. There you can have a UIButton. On tapping that, you could start capturing the video.
i am importing Video from iphone library In my app...but i am unable to do show i studied lots of code on stack over flow but none are working..for me..Basically i am doing sharing on fb and twitter...
..
-(IBAction)showVideoLibrary
{
UIImagePickerController *videoPicker = [[UIImagePickerController alloc] init];
videoPicker.delegate = self;
videoPicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
videoPicker.mediaTypes =[[NSArray alloc] initWithObjects: (NSString *)kUTTypeMovie,nil];
if(self.popoverController!=nil)
{
[self.popoverController release];
}
self.popoverController = [[UIPopoverController alloc] initWithContentViewController:videoPicker];
popoverController.delegate = self;
popoverController.popoverContentSize=CGSizeMake(320,1000);
[popoverController presentPopoverFromRect:CGRectMake(0,0,10,10) inView:self.view permittedArrowDirections:nil animated:YES];
}
thanks in advance
Try it on a real iPhone device.
Here is the code for picking video from iPhone library which i have used in my project.
Just add video method from selector to your desired button.
-(void)video
{
UIImagePickerController *imagePicker =
[[UIImagePickerController alloc] init];
imagePicker.delegate = self;
imagePicker.sourceType =
UIImagePickerControllerSourceTypePhotoLibrary;
imagePicker.mediaTypes = [[NSArray alloc] initWithObjects:(NSString *)kUTTypeMovie, nil];
[self presentModalViewController:imagePicker animated:YES];
}
-(void) imagePickerController: (UIImagePickerController *) picker
didFinishPickingMediaWithInfo: (NSDictionary *) info
{
NSString *mediaType = [info objectForKey: UIImagePickerControllerMediaType];
if (CFStringCompare ((__bridge CFStringRef) mediaType, kUTTypeMovie, 0)
== kCFCompareEqualTo)
{
NSString *moviePath = [[info objectForKey:UIImagePickerControllerMediaURL] path];
NSURL *videoUrl=(NSURL*)[info objectForKey:UIImagePickerControllerMediaURL];
// NSLog(#"%#",moviePath);
if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum (moviePath)) {
UISaveVideoAtPathToSavedPhotosAlbum (moviePath, nil, nil, nil);
}
}
[self dismissModalViewControllerAnimated:YES];
[picker release];
}
Do not forget to add mobile core services framework and to import
#import <MobileCoreServices/UTCoreTypes.h>
the string "moviepath" give you the path of the video in that iPhone then perform any desired thing with that video
You will get video path after compressing is done in string movie pathenter code here
MPMoviePlayerController *player =[[MPMoviePlayerController alloc] initWithContentURL: url]; // give here the "videourl"
[[player view] setFrame: [self.view bounds]];
[self.view addSubview: [player view]];
[player play];
I'm trying to set the camera flash mode in an UIImagePickerController to off, but I don't understand the reference page. Here is my code:
- (void)getMediaFromSource:(UIImagePickerControllerSourceType)sourceType {
NSArray *mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:sourceType];
if ([UIImagePickerController isSourceTypeAvailable:
sourceType] && [mediaTypes count] > 0) {
NSArray *mediaTypes = [UIImagePickerController
availableMediaTypesForSourceType:sourceType];
mediaTypes = [[NSArray alloc] initWithObjects: (NSString *) kUTTypeImage, nil];
UIImagePickerController *picker =
[[UIImagePickerController alloc] init];
UIImagePickerControllerCameraDevice *device;
picker.mediaTypes = mediaTypes;
picker.delegate = self;
picker.allowsEditing = YES;
picker.sourceType = sourceType;
[self presentModalViewController:picker animated:YES];
[picker release];
}}
I've tried setting picker.cameraDevice = UIImagePickerControllerCameraFlashModeOff, but this results in an error. The reference page says that cameraDevice is a property. Does this mean that I need to create that property myself, or is it located somewhere? 'Cause the camera works if I don't do anything to the code, but with flash mode set to auto...
There is obviously something I haven't understood. :/
replace picker.cameraDevice = UIImagePickerControllerCameraFlashModeOff with
picker.cameraFlashMode = UIImagePickerControllerCameraFlashModeOff;
I hope to load the videos in ipod/iphone library like app 'videos'.
the codes show below, but it always cause crash
UIImagePickerController *picker=[[UIImagePickerController alloc]init];
picker.sourceType= UIImagePickerControllerSourceTypePhotoLibrary;
picker.mediaTypes = [NSArray arrayWithObject:kUTTypeMovie];
picker.delegate = self;
Welcome any comment
Thanks
interdeb
We need to know how you are presenting it as well and perhaps information about the line it crashed on if it happens to be in your code. Here is an example that works for me:
- (void)presentVideoPicker:(UIImagePickerControllerSourceType)sourceType
{
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = [self retain];
picker.mediaTypes = [NSArray arrayWithObjects:(NSString*)kUTTypeMovie, kUTTypeImage, nil];
picker.videoQuality = UIImagePickerControllerQualityTypeHigh;
picker.allowsEditing = YES;
picker.sourceType = sourceType;
[self.view.window.rootViewController presentModalViewController:picker animated:YES];
[picker release];
}
I send it UIImagePickerControllerSourceTypeCamera or UIImagePickerControllerSourceTypePhotoLibrary