我通过切换振动/声音硬件按钮将手机设置为静音状态。在整个应用程序中,除非设备处于静音状态,否则会播放一些背景音乐。所以在这种情况下,我的音乐正在播放但是静音。现在在某些时候我想要呈现视频(没有声音,但这无关紧要),但MPMoviePlayerController中的视频会在AVAudioPlayer上打开音乐,即使该设备处于“静音”状态。即使我退出MPMoviePlayerController,AVAudioPlayer也会继续大声播放。
一些代码示例,但我怀疑它会有所帮助:
// movie without sound
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategorySoloAmbient error:nil];
NSURL *movieURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"myVideo" ofType:@"mp4"]];
_moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:movieURL];
[_scrollView addSubview:_moviePlayerController.view];
[_moviePlayerController prepareToPlay];
[_moviePlayerController play];
// music
_audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
[_audioPlayer prepareToPlay];
[_audioPlayer play];
答案 0 :(得分:0)
要解决此问题,我必须重写代码,但不是使用MPMoviePlayerController
我使用了AVPlayer
。现在一切都像魅力一样。