iOS SDK - iphone音频插孔如何与连接的电缆交互?

时间:2011-08-03 13:01:32

标签: iphone ios audio

我似乎从iPhone上的kaudiosessionproperty_audioroute属性中获取了几个值。 如:

ReceiverAndMicrophone
HeadsetInOut
HeadphonesAndMicrophone
SpeakerAndMicrophone

iPhone(iPod?)如何知道选择哪种属性?每个属性对iPhone上麦克风的感知意味着什么?

非常感谢!

1 个答案:

答案 0 :(得分:4)

理解这一点的关键是知道单词的含义。我不知道文档中有一本好词典,但是一些定义分散在文档中(包括Audio Session Programming Guide)。其他人,你只需要知道耳机是如何工作的。

  • 收件人:“打电话时,您听到的小扬声器”
  • 耳机:耳机插孔中的3芯插头(左,右,麦克风+接地)。
  • 耳机:耳机插孔中的2芯插头(左,右+接地)
  • 麦克风:iPhone的麦克风(位于设备底部)
  • 演讲者:iPhone的“响亮”扬声器(位于设备底部)

因此,如果您已插入“耳机”(没有麦克风的耳塞),那就是HeadphonesAndMicrophoneReceiverAndMicrophoneSpeakerAndMicrophone的对比是软件配置设置(例如,按下Phone.app中的“扬声器”按钮)。

通过查看分隔通道的黑带,您可以了解耳机插孔上有多少导体。立体声耳机插孔有两个黑带。耳机插孔(带麦克风)有三个。这就是设备如何判断插入哪一个。它只是检查其中一个音频通道和麦克风输入之间的连续性。如果有短片,那就意味着它是耳机。如果它打开了,那就是耳机。