UIImagePickerController with camera source with allows editing yes : video trimming doesn't work

北战南征 提交于 2019-12-07 01:12:18

问题


I am using UIImagePickerController to record a video with the sourceType set to UIImagePickerControllerSourceTypeCamera.

I have set allowsEditing to true.

After capturing video I edit the video using the trimming interface and press "Use", I only get back the original recording not the trimmed version. What am I doing wrong?

I am using iOS 5.

-(void)shootvideo {
    imagePicker = [[UIImagePickerController alloc] init];
    [imagePicker.view addSubview:test];
    [imagePicker.view addSubview:test2];

    imagePicker.delegate = self;
    imagePicker.sourceType =  UIImagePickerControllerSourceTypeCamera;

    imagePicker.mediaTypes = [[NSArray alloc] initWithObjects:(NSString *)kUTTypeMovie, nil];
    imagePicker.showsCameraControls = YES;
    imagePicker.navigationBarHidden = NO;
    imagePicker.toolbarHidden = NO;
    imagePicker.wantsFullScreenLayout = YES;
    imagePicker.allowsEditing=YES;

    [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];

        //NSLog(@"%@",moviePath);

        if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum (moviePath)) {
            UISaveVideoAtPathToSavedPhotosAlbum (moviePath, nil, nil, nil);
        }
    }

    [self dismissModalViewControllerAnimated:YES];  
}

I want to use that trimmed video for further processing according to my application.

Where I am going wrong?

Is there any other way to achieve this task?


回答1:


allowsEditing : A Boolean value indicating whether the user is allowed to edit a selected still image or movie.

@property (nonatomic) BOOL allowsEditing

Discussion If you allow the user to edit still images or movies, the delegate may receive a dictionary with information about the edits that were made. The protocol for the delegate is described in UIImagePickerControllerDelegate Protocol Reference.

I Think this will be helpful.




回答2:


you need to grab the info[UIImagePickerControllerEditedImage] from the - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

I believe.



来源:https://stackoverflow.com/questions/10673269/uiimagepickercontroller-with-camera-source-with-allows-editing-yes-video-trimm

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!