我正在尝试同时录制来自 2 个内置麦克风(底部、顶部)的音频信号。我可以使用拾取底部麦克风信号
MediaRecorder.AudioSource.MIC
和顶部麦克风信号使用
MediaRecorder.AudioSource.CAMCORDER
我可以单独录制,但我想从 2 个麦克风同时录制。有谁知道如何同时录制?我试过 & 或 | 运营商,但我只能得到 1 个频道信号。
我使用 Galaxy S2 设备。
我将不胜感激任何回应:) 提前致谢。
我正在尝试同时录制来自 2 个内置麦克风(底部、顶部)的音频信号。我可以使用拾取底部麦克风信号
MediaRecorder.AudioSource.MIC
和顶部麦克风信号使用
MediaRecorder.AudioSource.CAMCORDER
我可以单独录制,但我想从 2 个麦克风同时录制。有谁知道如何同时录制?我试过 & 或 | 运营商,但我只能得到 1 个频道信号。
我使用 Galaxy S2 设备。
我将不胜感激任何回应:) 提前致谢。
有一种误解,认为在具有 2 个麦克风的设备中,在立体声模式下录制时会同时使用两个麦克风。
在我对数十种设备进行测试的 3 年经验中,我发现情况并非如此。
在我使用过的各种 Android 设备(从低成本大众机型到旗舰机型)中,仅主麦克风就可用于单声道和立体声录音。
造成这种情况的一个原因是主麦克风的质量更好(更灵敏,噪音更小等)并且比辅助麦克风更昂贵。
您可以通过使用 AudioRecord ( http://developer.android.com/reference/android/media/AudioRecord.html ) 类进行立体声录音来实现这一点。看看如何访问第二个麦克风 android,例如 Galaxy 3。
将音频格式指定为立体声并将音频源指定为摄像机会在(兼容的)两个麦克风设备上自动选择两个麦克风,每个通道一个麦克风。
例如:
audioRecorder = new AudioRecord(MediaRecorder.AudioSource.CAMCORDER,sampleRate,android.media.AudioFormat.CHANNEL_CONFIGURATION_STEREO,android.media.AudioFormat.ENCODING_PCM_16BIT,bufferSize);
将初始化一个新的 AudioRecord 类,该类可以从两个设备麦克风以 PCM、16 位格式的立体声录制。
有关使用 AudioRecord(录制 .wav)录制的更多帮助,请查看:http: //i-liger.com/article/android-wav-audio-recording。