2012-04-17 5 views
1

Я использую этот код для воспроизведения потокового видео с яблочным сайтаКак играть видео с MPMoviePlayerController

- (IBAction)playMovie:(UIButton *)sender { 
    NSLog(@"start playing"); 
    //NSURL *url = [NSURL URLWithString:@"http://spatie.be/test.mov"]; 
    NSURL *url = [NSURL URLWithString:@"http://stream.qtv.apple.com/events/mar/123pibhargjknawdconwecown/12oihbqeorvfhbpiubqnfv3_650_ref.mov"]; 
    moviePlayer = [[MPMoviePlayerController alloc] 
        initWithContentURL:url]; 


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

    moviePlayer.controlStyle = MPMovieControlStyleDefault; 
    moviePlayer.shouldAutoplay = YES; 
    moviePlayer.movieSourceType = MPMovieSourceTypeStreaming; 
    [self.view addSubview:moviePlayer.view]; 
    [moviePlayer setFullscreen:YES animated:YES];  
} 
- (void) moviePlayBackDidFinish:(NSNotification*)notification { 

    NSError *error = [[notification userInfo] objectForKey:@"error"]; 
    if (error) { 
     NSLog(@"Did finish with error: %@", error); 
    }  

    MPMoviePlayerController *player = [notification object]; 
    [[NSNotificationCenter defaultCenter] 
    removeObserver:self 
    name:MPMoviePlayerPlaybackDidFinishNotification 
    object:player]; 

    if ([player 
     respondsToSelector:@selector(setFullscreen:animated:)]) 
    { 
     [player.view removeFromSuperview]; 
    } 

} 

Когда playMovie вызывается, moviePlayBackDidFinish это immediatelty называется, и сообщение об ошибке записывается:

Did finish with error: Error Domain=MediaPlayerErrorDomain Code=-11800 "The operation could not be completed" UserInfo=0x78d25d0 {NSLocalizedDescription=The operation could not be completed}

Как я могу решить эту ошибку?

ответ

1

Вы не отметили это как iOS, но MPMoviePlayer - только для iOS. Это должно отлично работать с видео, которое будет воспроизводиться на iOS. К сожалению, видео, которое вы пытаетесь воспроизвести, не совместимо с iOS. Попробуйте этот URL:

http://stream.qtv.apple.com/events/mar/123pibhargjknawdconwecown/12oihbqeorvfhbpiubqnfv3_ipad_vod_ref.mov 
Смежные вопросы