Вызовите другой URL во время воспроизведения одного видео с URL на iphone - PullRequest
2 голосов
/ 23 февраля 2011

В моем приложении я играю 2 видео из массива одно за другим. Я хочу нажать другую ссылку в момент начала воспроизведения первого видео, не влияя на воспроизведение видео.

Вот мой код, который я пытался воспроизвести два видео один за другим,

-(IBAction)playMovie:(id)sender{    
i=0;
array=[[NSArray alloc] initWithObjects:@"https://s3.amazonaws.com/adplayer/colgate.mp4",@"https://s3.amazonaws.com/ventuno-platform-flv-sep2010/happy_family.mp4",nil];
[self initializPlayer]; }

Вышеуказанное действие вызывается, когда пользователь нажимает кнопку, чтобы начать воспроизведение видео.

-(void)initializPlayer{

if(i<[array count])     

    i +=1;
else {
    i = 1;
}

NSLog(@"i value:%@",[array objectAtIndex:i-1]);
NSURL *url1=[NSURL URLWithString:[array objectAtIndex:i-1]];
MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:url1];
[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(moviePlaybackComplete:) 
                                             name:MPMoviePlayerPlaybackDidFinishNotification
                                           object:moviePlayerController];

[[NSNotificationCenter defaultCenter] addObserver:self 
                                         selector:@selector(moviePlayerPlaybackStateDidChange:) 
                                             name:MPMoviePlayerPlaybackStateDidChangeNotification 
                                           object:moviePlayerController];

[self.view addSubview:moviePlayerController.view];
moviePlayerController.fullscreen=YES;
[moviePlayerController play];}

В методе initializPlayer два видео воспроизводятся одно за другим, а также есть два уведомления, первое используется для уведомления о завершении видео или когда пользователь нажимает кнопку «Готово». Другое используется для уведомления,

1.videoplay 2.videopause 3. видео прервано 4.videoforward 5.videobackward

 -(void)moviePlaybackComplete:(NSNotification *)notification{

NSLog(@"moviePlaybackComplete");
MPMoviePlayerController *moviePlayerController=[notification object];

[[NSNotificationCenter defaultCenter] removeObserver:self 
            name:MPMoviePlayerPlaybackDidFinishNotification 
            object:moviePlayerController];

[moviePlayerController.view removeFromSuperview];
[moviePlayerController release];
[self initializPlayer];}

moviePlaybackComplete уведомление используется для уведомления пользователя, когда видео завершено.

-(void) moviePlayerPlaybackStateDidChange:(NSNotification*)notification {

NSLog(@"moviePlayerPlaybackStateDidChange");
MPMoviePlayerController *moviePlayer = notification.object;
MPMoviePlaybackState playbackState = moviePlayer.playbackState;
if(playbackState == MPMoviePlaybackStateStopped)
{
    //NSLog(@"MPMoviePlaybackStateStopped");
} 
if(playbackState == MPMoviePlaybackStatePlaying) 
{
    //NSLog(@"MPMoviePlaybackStatePlaying");
} 
if(playbackState == MPMoviePlaybackStatePaused)
{
    //NSLog(@"MPMoviePlaybackStatePaused");
} 
if(playbackState == MPMoviePlaybackStateInterrupted) 
{
    NSLog(@"MPMoviePlaybackStateInterrupted");
} 
if(playbackState == MPMoviePlaybackStateSeekingForward)
{
    NSLog(@"MPMoviePlaybackStateSeekingForward");
} 
if(playbackState == MPMoviePlaybackStateSeekingBackward)
{
    NSLog(@"MPMoviePlaybackStateSeekingBackward********");
}}

moviePlayerPlaybackStateDidChange уведомление используется для уведомления пользователя, если какие-либо изменения были внесены в воспроизведение состояния.

МОЙ СОМНЕНИЕ:

Во время первого воспроизведения видео (начала) я хочу нажать на другой URL, не затрагивая видео. Нажмите еще один URL в конце первого видео.

Пожалуйста, помогите мне сделать это.

Спасибо

...