オーディオの録音と再生が必要な iOS アプリを開発しています。iPhone 4 では、録音後にオーディオ レベルが大幅に低下していることに気付きました。これは、私がここで見つけたコードを使用したときに修正されました: iOS - AVFoundation を使用してサウンドを録音した後、iPhone のサウンド レベルが低い
if(!IS_IPHONE_5){
UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);
}
これはうまく機能しますが、ユーザーが自分の電話をミュートした場合、オーディオがまだ再生されるという問題が発生します (アプリ内の他のサウンドも)。
オーディオがミュートされているかどうかを検出することは何とか可能ですか? もしそうなら、上記のコードを実行しないようにします。