2

ビューコントローラーでは、ビデオを再生していて、バックグラウンドミュージックもいくつかあります。BGM が再生されている場合、ビデオがループするとフリーズします。バックグラウンド ミュージックが再生されていない場合、ビデオは正常にループします。

ビデオプレーヤーを設定する方法は次のとおりです。

self.moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:[self getBundleClip:@"MyVideo"]];
self.moviePlayer.controlStyle = MPMovieControlStyleNone;
self.moviePlayer.shouldAutoplay = YES;
self.moviePlayer.repeatMode = MPMovieRepeatModeOne;

オーディオは、このSound Managerを介して再生されます。ビデオがフリーズする理由は何ですか?

4

1 に答える 1

0

繰り返しモードで AVAudioplayer を再生するには、以下のコードのように、バックグラウンドで音楽をAVAudioPlayer再生し、同時に再生してみてください。MPMoviePlayerController

最初に、以下のようにヘッダー ファイル (.h) で AVAudioplayer オブジェクトを初期化します。

@interface  Yourviewcontroller : UIViewController
{
    //your some codes after
    AVAudioPlayer *audioPlayer;
}

@property (strong, nonatomic) AVAudioPlayer *audioPlayer;

以下のコードのように、バックグラウンドで再生オーディオ ファイルを実装した後:

    audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:    [[NSBundle mainBundle] pathForResource:@"audio" ofType:@"mp3"]] error:NULL]; 

    audioPlayer.numberOfLoops =-1;//it's play audio repeatedly
    audioPlayer.currentTime=0.0f;
    [audioPlayer prepareToPlay];

以下のコードのように、プロジェクトの任意の部分でオーディオを再生した後:

  [audioPlayer play];

以下のコードのようにオーディオ プレーヤーを停止します。

 [audioPlayer stop];
于 2012-09-03T04:43:12.670 に答える