iPhone 5有3个麦克风。 我可以改变从哪一个录音?

根据产品介绍,iPhone 5有3个麦克风:

iPhone 5演示文稿

看完iFixit和其他人的网站之后,我现在知道底部的麦克风在哪里,而且我已经识别出了后面的那个,就在相机旁边。

在前面应该有另外一个,但是我看不到它,所以我假设它在听筒/接收器开口后面。 (它是否正确?)

我想从两个不同的麦克风录制,而iPhone 5正躺在它的后面。 (所以后置麦克风是不可能的)。

我的问题:

有两种方法可以同时和分别从两个麦克风录制(即立体声,就像一些Windows Phone 8 Lumia手机让你这样做)? 如果没有,有没有一种方法可以用来在麦克风之间切换,例如从iPhone底部的第一个logging开始,然后执行一些代码切换到顶部的那个?

您的提示将非常感激。

// set up the audio session NSError *error = nil; AVAudioSession *audioSession = [AVAudioSession sharedInstance]; [audioSession setCategory:AVAudioSessionCategoryPlayAndRecord error:&error]; [audioSession setActive:YES error:&error]; if (error != nil) { NSLog(error); } // all available inputs NSArray* inputs = [audioSession availableInputs]; // Locate the port corresponding to the built-in microphone for (AVAudioSessionPortDescription* port in inputs) { if ([port.portType isEqualToString:AVAudioSessionPortBuiltInMic]) { [self setBuiltInMicPort:port]; break; } } // list all microphones for (AVAudioSessionDataSourceDescription *micType in [audioSession inputDataSources]) { NSLog(@"%@ -- %@ -- %@ -- %@", micType.dataSourceID, micType.dataSourceName, micType.location, micType.orientation ); if ([micType.orientation isEqualToString:@"Front"]) // or @"Back" or @"Bottom" { [micType setPreferredPolarPattern:AVAudioSessionPolarPatternOmnidirectional error:&error]; // optional [self.builtInMicPort setPreferredDataSource:micType error:&error]; } } 

这是如何在iPhone中select不同的内置麦克风的基本示例。 请记住,麦克风的数量有所不同:iPhone 5和更高版本有三个麦克风,而上一代只有两个麦克风(没有后置麦克风)。

欲了解更多信息,请阅读苹果技术问答 。

我刚刚证实,使用前置摄像头时,Skype会切换到顶级麦克风。 现在我只需要确认我可以通过从前置摄像头开始video采集,然后再次停止,在顶部和底部麦克风之间快速切换。