3

AVAudioSession とリモート IO を使用して、オーディオ ジャック コネクタと内蔵マイクの両方を介して情報を記録します。iOS 6 の新機能であるマルチルート オーディオで可能になると思います。

そのために、オーディオ セッションから inputDataSources を取得したいと思います: ( https://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVAudioSession_ClassReference/Reference/Reference.html#//apple_ref /c/data/AVAudioSessionCategoryMultiRoute )

私がやっていることは次のとおりです。

AVAudioSession *session = [AVAudioSession sharedInstance];
NSArray *available_outputs = [session inputDataSources];

(オーディオセッションも設定して有効にしています)

私が得るのはすべてゼロavailable_outputsです...

私は何を間違っていますか?

4

1 に答える 1

1

それを見つけた。ドキュメント
から:

これは現在、特定の USB デバイスにのみ適用されます。

この API は iOS 7 で変更される予定ですが、6 は「特定の USB デバイス」というあいまいな定義に限定されています。
ところで、私のテストでは、iPhone マイクの iOS 6.02 では動作しましたが、6.1.4 では動作しませんでした (iPhone 5 での両方のテスト)。

于 2013-09-03T06:41:15.427 に答える