我正在使用iphone中的视频应用程序。当用户点击一个按钮时,它将引导到第二个视图,从那里我正在播放来自url的视频。
但当用户从该视图返回并再次进入该视频未播放时。
它连续显示以下2行
[MPAVController] Autoplay: Likely to keep up or full buffer: 0
[MPAVController] Autoplay: Skipping autoplay, not enough buffered to keep up.以下是我的代码
- (void)viewDidLoad
{
[super viewDidLoad];
self.moviePlayerController = [[MPMoviePlayerController alloc] init];
[self.moviePlayerController prepareToPlay];
self.moviePlayerController.shouldAutoplay = YES;
[[self.moviePlayerController view] setFrame:CGRectMake(-30, 72, 360,140)];
[[self view] addSubview: [self.moviePlayerController view]];
NSString *strng = [NSString stringWithFormat:@"http://quickemee_videos.s3.amazonaws.com/videoStream_1352395870143_616.mp4"];
NSLog(@"strng %@",strng);
NSURL * adurl = [NSURL URLWithString:strng];
[self playVideo:adurl];
}。。。。
-(IBAction)back:(id)sender{
[moviePlayerController stop];
[self.navigationController popViewControllerAnimated:YES];
} 发布于 2013-01-30 23:09:34
使用此代码
NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"video_name" ofType:@"m4v"]];
moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
[moviePlayer prepareToPlay];
moviePlayer.view.frame = self.view.bounds;
[self.view addSubview:moviePlayer.view];
[moviePlayer play];
[moviePlayer setFullscreen:FALSE];
// if you want no control.
[moviePlayer setControlStyle:MPMovieControlStyleNone]; 发布于 2013-01-30 21:11:46
请先尝试调用[self prepareToPlay]。
苹果称:
如果在调用play方法时电影播放器尚未准备好播放,则该方法会自动调用此方法。但是,为了减少播放延迟,请在调用play之前调用此方法。
更新:
确保该文件可用。我无法在我的浏览器中访问它。
发布于 2013-01-30 21:16:12
viewDidLoad只调用一次。因此,当您弹出viewController并返回到它时,不会再次调用viewDidLoad。因此可以尝试在- (void)viewWillAppear:(BOOL)animated中实现self.moviePlayerController = [[MPMoviePlayerController alloc] init];
https://stackoverflow.com/questions/14604752
复制相似问题