2

在视图控制器中,我播放了视频和一些背景音乐。如果正在播放背景音乐,则视频在循环播放时会冻结。如果背景音乐未正常播放,则视频循环正常。

这是我设置视频播放器的方式:

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并同时播放,MPMoviePlayerController如下面的代码,以重复模式播放 AVAudioplayer:

首先在头文件 (.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 回答