尝试仅为我的应用程序使用内置的iPhone MIC。
- (BOOL)setPreferredInput:(AVAudioSessionPortDescription *)inPort error:(NSError **)outError NS_AVAILABLE_IOS(7_0);
{
NSError* audioError = nil;
AVAudioSession* myAudioSession = [AVAudioSession sharedInstance];
[myAudioSession setPreferredInput:AVAudioSessionPortBuiltInMic error:&audioError];
答案 0 :(得分:1)
AVAudioSessionPortBuiltInMic
是NSString
,而不是AVAudioSessionPortDescription
。要获取设备上可用端口的描述符,请使用[AVAudioSession availableInputs]
。
for (AVAudioSessionPortDescription *input in [AVAudioSession availableInputs]) {
if ([[input portType] isEqualToString:AVAudioSessionPortBuiltInMic]) {
NSError *error = nil;
[AVAudioSession setPreferredInput:input error:&error];
}
}