IPhone音频:音量微弱(但使用耳机可以)

IPhone音频:音量微弱(但使用耳机可以),iphone,core-audio,volume,avaudiosession,headphones,Iphone,Core Audio,Volume,Avaudiosession,Headphones,我收到了意想不到的音频行为: 问题——iPhone设备的音量非常微弱,但如果我插上耳机,音量就完美了 首先,在iPhone上启动应用程序时不要插入任何东西 音频工作,但它是如此微弱,真的好像它是在最小音量。但它是在最大容量上 现在我插上耳机。整卷。太好了 拔下耳机。转到(2) 不管我是不是从插上耳机开始。这似乎是一个无关的问题 编辑:这种行为是我的应用程序特有的。我已经试用过苹果的AVTouch示例,无论有没有耳机,它都能正常工作。呜呼 // kAudioSessionOverrideAudio

我收到了意想不到的音频行为:

问题——iPhone设备的音量非常微弱,但如果我插上耳机,音量就完美了

  • 首先,在iPhone上启动应用程序时不要插入任何东西
  • 音频工作,但它是如此微弱,真的好像它是在最小音量。但它是在最大容量上
  • 现在我插上耳机。整卷。太好了
  • 拔下耳机。转到(2)
  • 不管我是不是从插上耳机开始。这似乎是一个无关的问题

    编辑:这种行为是我的应用程序特有的。我已经试用过苹果的AVTouch示例,无论有没有耳机,它都能正常工作。

    呜呼

    // kAudioSessionOverrideAudioRoute_Speaker would only work once.  
    // kAudioSessionProperty_OverrideCategoryDefaultToSpeaker works
    //     until the session changes.
    SET_PROPERTY( kAudioSessionProperty_OverrideCategoryDefaultToSpeaker,        UInt32,   (UInt32) YES );
    
    基本上iPhone有两个内置扬声器,一个是“接收器”,当你接到电话时它会塞住你的耳朵,另一个是大得多的外置扬声器(电源插槽两侧的两个格栅,左边是外置扬声器,右边是麦克风——让人困惑:我曾经把我的iPhone带到泰国的一家修理店,因为我的“右扬声器”坏了,他们甚至提出帮我修理它?!幸运的是我不喜欢这个价格…)


    无论如何,我想不出什么好的理由

    SET_PROPERTY( kAudioSessionProperty_AudioCategory,  UInt32,  
                     kAudioSessionCategory_PlayAndRecord );
    

    会话默认使用接收器,因此只需告诉它使用扬声器即可。

    与编程相关的问题在哪里?如果你问这个问题,这意味着它完全超出了你的专业领域,你真的不应该插手。是你投票决定结束这个问题吗?@Claus,这是一个编程问题,请参见Ohmu的回答。“我想不出什么好的理由”-因为如果你真的同时播放和录制声音,那么手机底部的麦克风会从旁边的扬声器接收到更多不需要的声音,而不是从你耳旁的扬声器接收到的声音。