Nexus 4 mic gain too high / distorted input
Please vote here to bring the issue more attention.
Hey guys, something I noticed. While testing several VoIP options, I found out that my voice with the Speex low bitrate codec was coming out on the other end significantly distorted. I thought at first it was the compression (the codec may apply dynamic compression). But as it turns out, it's the mic gain itself on the phone. The codec simply exacerbates the problem. I don't know if this is a hardware or an OS problem, but it's OS-wide.
If you're holding the phone like a handset on your face, then something a bit louder than a whisper will distort a bit. If you're talking loudly, for sure. This is not as noticeable with regular calls, cause the frequency range is limited, but for higher-quality streams it is a problem. If you don't have another smartphone at hand, you can test how high you can go with e.g. Skype's call testing service, or this number someone in another thread mentioned, where you can hear yourself in real time: (909)390-0003 (I'm in the US with T-mobile).
This is not only a problem with calls, which is my main concern, but also, if you're going for example to a concert, you better get something else to record your clips. There are some of the samples I could find with loud enough audio (which is not very loud) that it distorts.
First the most egregious one: http://www.symbiantweet.com/nokia-lu...ing-comparison
Since that comes from a WP forum, some of you may be rolling your eyes (although, faking that would be pretty childish even for the most staunch fanboy).
Here are a couple other videos I found that show the problem:
The several VoIP apps that have a "mic gain" control (Groove IP, Talkatone, Sipdroid, CSipSimple) don't actually change the mic gain, but the app's gain which means the already distorted audio will go out with a lower volume, but the damage has already been done.
From searching, it seems that the only way to set actual gain lower in Android is if the kernel permits it, which means a custom kernel. Hopefully the CM guys or someone else can address this. Since the phone is not in the hands of too many people right now and it hasn't been long, the problem is not very widely known, but once people start going to concerts and trying to record clips, there's gonna be some complaints.