iOS如何在一个视图上播放多个视频

时间:2012-11-14 21:07:50

标签: ios ios6

我想知道如何在一个页面中播放多个视频,比如你有两个按钮,当你按下一个时,它会播放一个视频,当你按下另一个时,它会播放另一个视频。到目前为止我有这个代码:

-(void)WelcomeVideo1
{
    NSURL *url31 = [NSURL fileURLWithPath:[[NSBundle mainBundle]
                                         pathForResource:@"DirectorsWelcome" ofType:@"mp4"]];
    welcomePlayer1 =  [[MPMoviePlayerController alloc]
                      initWithContentURL:url31];

    welcomePlayer1.controlStyle = MPMovieControlStyleDefault;
   welcomePlayer1.shouldAutoplay = YES;
    [self.view addSubview:welcomePlayer1.view];
    [welcomePlayer1 setFullscreen:YES animated:YES];
}

-(void) moviePlayBackDidFinish:(NSNotification *)aNotification{
    [welcomePlayer1.view removeFromSuperview];
    welcomePlayer1 = nil;
}

- (void)moviePlayerWillExitFullscreen:(NSNotification*) aNotification {
      [welcomePlayer1 stop];
    [welcomePlayer1.view removeFromSuperview];
   welcomePlayer1 = nil;
}


-(void)storyVideo1
{
    NSURL *url4 = [NSURL fileURLWithPath:[[NSBundle mainBundle]
                                          pathForResource:@"OurStory" ofType:@"mp4"]];
    storyPlayer1 =  [[MPMoviePlayerController alloc]
                       initWithContentURL:url4];

    storyPlayer1.controlStyle = MPMovieControlStyleDefault;
    storyPlayer1.shouldAutoplay = YES;
    [self.view addSubview:storyPlayer1.view];
    [storyPlayer1 setFullscreen:YES animated:YES];
}

-(void) moviePlayBackDidFinish2:(NSNotification *)aNotification{
    [storyPlayer1.view removeFromSuperview];
    storyPlayer1 = nil;
}

- (void)moviePlayerWillExitFullscreen2:(NSNotification*) aNotification {
    [storyPlayer1 stop];
    [storyPlayer1.view removeFromSuperview];
    storyPlayer1 = nil;
}

但每当我尝试播放这两个视频时,我播放的第二个视频都会崩溃应用程序。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

使用AVPlayerAVPlayerLayer代替MPMoviePlayerController。 请查看以下apple example