我正在开发一个Android程序,其目的是记录声音信号然后对其进行分析。 为了录制这个声音信号,我使用了一个特殊的麦克风,我想通过音频线路直接插入我的 Android 设备,所以我不会使用手机麦克风。
这是我在 Android 网站上找到的内容:
"定义音频源。这些常量与 setAudioSource(int) 一起使用。 概括 常数 int CAMCORDER 与相机方向相同的麦克风音频源(如果可用),否则为主设备麦克风 int DEFAULT 默认音频源 int MIC 麦克风音频源 int VOICE_CALL 语音通话上行+下行音频源 int VOICE_COMMUNICATION 为语音通信(例如 VoIP)调整的麦克风音频源。 int VOICE_DOWNLINK 语音通话下行链路 (Rx) 音频源 int VOICE_RECOGNITION 为语音识别而调整的麦克风音频源(如果可用),否则行为类似于 DEFAULT。 int VOICE_UPLINK 语音调用上行链路 (Tx) 音频源“
似乎没有办法将线路定义为音频源。我尝试将自己的麦克风插入手机,然后录制声音,希望它能识别我自己的麦克风(作为免提套件),但它一直在手机麦克风上录制。
有人知道如何设置音频源以便我可以使用线路输入吗?
提前非常感谢!
最佳答案
您做出了一些可能不正确的假设。普通的 Android 手机没有 Line Ins。它们不是为专业音频系统而设计的。
当您插入耳机时,Android 会自动识别您的外部麦克风,您无需在代码中进行设置。只需将其保留为 DEFAULT
即可。
问题是,您的 MIC 需要一个特殊且兼容的连接器。您可能会注意到手机的耳机连接器与立体声插孔不同。因此您需要一个适配器或焊接自己的兼容插孔。如果您用两个部件连接 MIC,Android 会认为它是耳机而不是 MIC !
这里是the link转至文章:如何在 Galaxy Nexus 上使用外置麦克风?
关于android - (Android) 从音频线路输入而不是手机麦克风获取音频信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12192295/