2011-03-27 12 views
0
-(void)playVideo:(NSURL *)url{ 

    if (videoPlayer) { 
     [videoPlayer release]; 
     videoPlayer = nil; 
    } 
    videoPlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:url]; 
    url = nil; 
    videoPlayer.moviePlayer.controlStyle=MPMovieControlStyleFullscreen; 
    videoPlayer.view.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight); 
    videoPlayer.moviePlayer.scalingMode = MPMovieScalingModeAspectFit; 
    videoPlayer.view.backgroundColor = [UIColor blackColor]; 


    [[UIApplication sharedApplication] 
    setStatusBarStyle:UIStatusBarStyleBlackTranslucent animated:NO]; 


    [videoPlayer.moviePlayer prepareToPlay]; 
    videoPlayer.moviePlayer.shouldAutoplay = YES; 
    videoPlayer.hidesBottomBarWhenPushed = YES; 
    self.navigationController.navigationBarHidden=NO; 
    videoPlayer.navigationItem.hidesBackButton = YES; 
    [self.navigationController pushViewController:videoPlayer animated:YES]; 

    [self addObservers]; 
} 

誰でもこのコードが間違っていると言うことができますか? URLはhttpリンクをストリーミングしています。動画プレーヤーが表示されていますが、しばらくすると消えます。これは、この行の後に無線LANMPMoviePlayerViewControllerがiPodやiPhoneで再生できない

+0

あなたは4.0以上でのみ開発していますか? – shannoga

+0

はい4.O以上。興味深いのは、3Gネットワ​​ークで再生するビデオですが、Wi-Fiでは再生しません。 – Raj

答えて

1

をあなたの問題は、コードに関連するものではなく、あなたがテストしている映画ファイルに関連する可能性が高いです。

m3u8スニペットが完全で、低帯域幅でも有効であることを確認してください。このBest Practice GuideとこのTechNoteで説明されているように、Apples Mediastream Validatorでm3u8をテストしてください。

+0

問題がWi-Fiネットワークにあり、それは他のWiFi接続で正常に動作しています、可能性を思い出させていただきありがとうございます – Raj

-1

に3Gネットワ​​ークでの作業ではなく、されています

videoPlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:url]; 

この追加:あなたはそれは、3G上ではなく、無線LANネットワークに取り組んでいたことを言っているとおり

[videoPlayer retain]; 
+0

あなたの応答に感謝しますが、まだ動作していません – Raj

関連する問題