0

バイブレーション/サウンド ハードウェア ボタンを切り替えて、電話をミュート状態に設定しました。アプリケーション全体で、デバイスがミュート状態でない限り、バックグラウンド ミュージックが再生されます。この場合、私の音楽は再生されていますが、ミュートされています。ある時点でビデオを表示したいのですが (音はありませんが、これは問題ではありません)、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];
4

1 に答える 1