以前ここで見つけたように。
リモート I/O コールバックを使用してオーディオを再生しているときに AVAssetReader の実行を開始すると、iPod とのミキシングを許可しない限り、AVAssetReader を開始するとリモート I/O コールバックがブロックされます。
UInt32 audioCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory,sizeof(audioCategory),&audioCategory);
AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryMixWithOthers, sizeof (UInt32), &(UInt32) {1});
ただし、これによりオーディオ リモート コントロール呼び出しをセットアップとして使用できないことがわかりました。
そう...
- AVAssetReader を使用するには、「MixWithOthers」を ON にする必要があります
- オーディオリモコンを使用するには、「MixWithOthers」をオフにする必要があります
両方を使用できるように AudioSession をセットアップする方法を知っている人はいますか?