繁体   English   中英

从iOS 5中的UIImagePickerController保存视频

[英]Save video from UIImagePickerController in IOS 5

到目前为止,我一直使用以下代码来保存从UIImagePickerController获得的视频:

        NSURL *url = [info objectForKey:UIImagePickerControllerMediaURL];

        NSData *videoData = [NSData dataWithContentsOfURL:url];
        path = [kFilesSaveDirectory stringByAppendingFormat:@"%@/Vid%d.mov",album.albumName,album.lastfile];
        path2 = [kFilesSaveDirectory stringByAppendingFormat:@"%@/VidImg%d.png",album.albumName,album.lastfile];

        [videoData writeToFile:path atomically:NO];

        [[videoPlayer moviePlayer] setContentURL:[NSURL URLWithString:path]];
        UIImage *image = [[videoPlayer moviePlayer] thumbnailImageAtTime:1.0 timeOption: MPMovieTimeOptionNearestKeyFrame];
        [[videoPlayer moviePlayer] setContentURL:nil];
        [UIImagePNGRepresentation(image) writeToFile:path2 atomically:YES];

到目前为止,在ios 4中它可以正常工作,但是当我尝试在ios 5中使用它时,它会出现两个问题:

  1. 它给我的IMN零。

2.当我想用以下代码显示视频时,不显示视频:

[[videoPlayer moviePlayer] setContentURL:[NSURL URLWithString:choosen.bigpath]];

[self presentModalViewController:videoPlayer animated:YES];

[[videoPlayer moviePlayer] play];

这对我有用-

NSURL *mediaUrl = [info objectForKey:UIImagePickerControllerMediaURL];

        MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:mediaUrl];
        moviePlayer.shouldAutoplay = NO;
        thumbnail = [[moviePlayer thumbnailImageAtTime:0.0 timeOption:MPMovieTimeOptionNearestKeyFrame] retain];
        [moviePlayer release];
        [layer release];

我将此代码添加到此委托

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 

希望它也对您有用:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM