android插上耳机的时候仍然使用机身的麦克风录音,解决!

问题:我希望在插上耳机的时候,仍然使用机身的麦克风接受外界输入,耳机播放音频与机身麦克风接受外音互不干扰。

但是:在采用录音音源MediaRecorder.AudioSource.MIC时,插上耳机之后,除了扬声器以外,麦克风也切换到了耳机(没有带麦的用听筒录音哈哈),机身麦克风被屏蔽。

于是:改变录音音源为MediaRecorder.AudioSource.CAMCORDER

Microphone audio source with same orientation as camera if available, the main device microphone otherwise

麦克风音源为与摄像头同向的(如果有的话),或者为主设备的麦克风。

结果:插上耳机的时候仍然使用机身的麦克风接受外界输入。解决!

其余东西:

1.audio source


2.Audio输出通道的切换

Android通话或播放音乐等使用Audio输出过程中,可能发生Audio输出通道的切换。比如,插入有线耳机播放音乐时,声音是从耳机发出的;而此时拔出耳机,Audio输出通道会发生切换。

public static final String ACTION_AUDIO_BECOMING_NOISY

广播intent,提示应用程序音频信号由于音频输出的变化将变得“嘈杂”。例如,当拔出一个有线耳机,或断开一个支持A2DP的音频接收器,这个intent就会被发送,且音频系统将自动切换音频线路到扬声器。收到这个intent后,控制音频流的应用程序会考虑暂停,减小音量或其他措施,以免扬声器的声音使用户惊奇。

常量值:"android.media.AUDIO_BECOMING_NOISY"





你可能感兴趣的:(没营养的问题坑)