Check out
this table. A bunch of modern, high-quality, high-performing codecs. AAC+, AAC LC, enhanced AAC+, MP3. All
decodable by Android, on all devices. Sadly, Android devices can only encode on
AMR-NB at the sad sampling rate of 8KHz. At the miserable bitrate of 4.75 to 12.2kbps. At qualities unheard of since the early days of the telegraph (ok, I'm kidding --- AMR-NB is the voice codec most GSM and UMTS phonecalls are carried over).
Now, you may be asking: Couldn't the manufacturer add encoding support for more audio codecs? Sure, and some do. Others, like HTC for example, don't. Even on high-end devices like the Desire. Devices with Qualcomm Snapdragon CPUs clocked at 1GHz. With hardware support for
stereo AAC encoding. No, really, what on earth is wrong with these people.
At the same time, HTC went into the hassle of adding encoding support for h.264 and 720p (using MPEG4). And it makes me wonder: that they added h.264 encoding support means they are at least clued up with respect to paying royalties, adding the codec to the system and making use of it. That they introduced 720p using MPEG4 on the other hand makes no sense: how useful is 720p video recording --- recently introduced with HTC's Froyo build for the Desire --- or the capability to record audio as a whole come to think of it, when the recorded audio on this phone sounds like a wax record from the 1880s, not least because of the totally backwards codec they use throughout, while one of the most powerful mobile device CPUs in the market today just sits there idling. Idiots.