1

このコードを使用して、アップルサイトからのビデオストリーミングを再生しています

- (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れると、すぐに呼び出され、エラーメッセージがログに記録されます。

エラーで終了しました:エラードメイン=MediaPlayerErrorDomainコード=-11800"操作を完了できませんでした"UserInfo = 0x78d25d0{NSLocalizedDescription=操作を完了できませんでした}

このエラーを解決するにはどうすればよいですか?

4

1 に答える 1

1

これを iOS としてタグ付けしませんでしたが、MPMoviePlayer は iOS のみです。これは、iOS で再生されるビデオで問題なく動作するはずです。残念ながら、再生しようとしているビデオは iOS と互換性がありません。この URL を試してください:

http://stream.qtv.apple.com/events/mar/123pibhargjknawdconwecown/12oihbqeorvfhbpiubqnfv3_ipad_vod_ref.mov
于 2012-04-17T16:43:02.783 に答える