So far, I thought it was a firmware error, but now I just found a 2nd device that has two internal microphone capsules but only yields a monophonic signal (1st one was the S2 Plus GT-I9105P with Android 4.1.2 and now the HTC One M7; the Nexus 10 with Android 4.4.2 has only one mic).
I tested with:
bufSize = AudioRecord.getMinBufferSize(44100, AudioFormat.CHANNEL_IN_STEREO, AudioFormat.ENCODING_PCM_16BIT);
ar = new AudioRecord(source, 44100, AudioFormat.CHANNEL_IN_STEREO, AudioFormat.ENCODING_PCM_16BIT, bufSize);
and set source
according to How avoid automatic gain control with AudioRecord?
I also tested some apps if they were able to produce real stereo recordings but did find none (I tested the standard Camera/Camcorder, Audiorecorder, and RecForge Lite).
So my question is: How to enable stereo recording on tablets/smartphones yielding only mono albeit having two internal microphones?
Add on question if there is no way to achieve real stereo recordings: Could you name other devices with also two internal microphones but only mono recording capability?
Is there any API or trick to find out programmatically?
See what worked for me in the Motorola Moto G. I understand it is very dependent on the vendor/model, but I tried many combinations until I found that only with 48000 Hz I was getting stereo recording in that particular phone:
Recording stereo audio with a Motorola Moto G (or Moto X)