我的应用程序使用麦克风并输出音频,因此我将我的音频会话设置为播放和录制类别,但这似乎禁用了Airplay。如果我将类别设置为播放,则我的输出可以正常使用Airplay(但是显然输入无法工作)。
我尝试重写输出路由到扬声器,以防需要通过Airplay输出,但没有成功。
有什么想法吗?
我尝试重写输出路由到扬声器,以防需要通过Airplay输出,但没有成功。
有什么想法吗?
来自音频会话编程指南 › 使用分类 › 选择AirPlay的分类和模式:
只有特定的分类和模式支持AirPlay。以下分类支持Airplay的镜像和非镜像版本:
AVAudioSessionCategorySoloAmbient
AVAudioSessionCategoryAmbient
AVAudioSessionCategoryPlayback
AVAudioSessionCategoryPlayAndRecord
分类仅支持镜像 Airplay。
// Set AVAudioSession
NSError *sessionError = nil;
[[AVAudioSession sharedInstance] setDelegate:self];
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:&sessionError];
// Change the default output audio route
UInt32 doChangeDefaultRoute = 1;
AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryDefaultToSpeaker,
sizeof(doChangeDefaultRoute), &doChangeDefaultRoute);