1

我正在使用它来播放本地 .mov 文件

 NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle]
                                     pathForResource:@"MOVIE" ofType:@"mov"]];

 moviePlayer =
 [[MPMoviePlayerController alloc]
 initWithContentURL:url];

 [moviePlayer setControlStyle:MPMovieControlStyleNone];

 [[NSNotificationCenter defaultCenter]
 addObserver:self
 selector:@selector( moviePlayBackDidFinish:)
 name:MPMoviePlayerPlaybackDidFinishNotification
 object:moviePlayer];
 [moviePlayer setScalingMode:MPMovieScalingModeAspectFill];
 [moviePlayer setFullscreen:FALSE];

 //---play partial screen---
 moviePlayer.view.frame = CGRectMake(0, 0, 320, 240);
moviePlayer.shouldAutoplay = YES;
 [self.view addSubview:moviePlayer.view];
[moviePlayer play];

我想从 url 预加载视频并将其保存到驱动器,以便在播放时没有网络延迟。如何从 url 保存文件,然后将其加载到 mpmovieplayer。

好像应该是这样的……

NSString *stringURL = @"url to file";
NSURL  *url = [NSURL URLWithString:stringURL];
NSData *urlData = [NSData dataWithContentsOfURL:url];

但如果是这种情况,我不知道如何用数据初始化它。

4

1 回答 1

0

您可以使用NSURLConnection下载 URL 的内容,并由您决定存储位置/方式。然后将本地文件的 URL 加载到您的电影播放器​​中。

尝试将整个视频保存在内存中对我来说似乎是不可取的;它可能只是太大了!

也就是说,你真的需要这样做吗?让MPMoviePlayerController你现在如何处理这件事失败了?

于 2013-04-12T22:29:11.420 回答