Okay, first things first: that headline was pure sensationalism at its core. I love Android, and there are currently no alternatives to it that I would consider as reasonable replacements for everything Android does so damn well. But it's very often the little things that can really frustrate you when dealing with a device or platform.
Case in point, Android's handling of its multimedia duties. See, when Apple decided to get into the smartphone biz, they completely changed the paradigm of what we expected. Instead of a phone built around business needs that could also browse the web and play audio files, they started with an iPod and built around that. In fact that's what led to many of the early jokes about the iPhone really just being an iPod that made phone calls. It was initially best at its roots and poor at everything else. It's since improved drastically, although the joke that it's terrible at making phone calls remains.
Meanwhile Android came from a more base concept of trying to do everything, and launched after the iPhone set the standard for these concepts. It, IMO, got the overall OS concept down much better, appreciating that we need to run more than one app at a time, that when something wants our attention it shouldn't completely overtake the activity we're participating in, and allowing applications to tie their needs together in all kinds of clever and involved ways. But what it lacked was the long history of multimedia experience to inform that functionality, and that's where it still fails.
To be clear, Android's built-in media abilities are fine. They do the job well, their interface is decent, and I have little need to complain about it. Some phones, such as the Galaxy S line, include support for a lot more codecs making it actually EASIER to play videos on my phone than on an iPhone (my Epic 4G has so far played every single video format I've thrown on its card, without conversion) or Zune, and include improved media players. As well the Android Market is packed with alternatives for better podcasting software than Google's passable Listen app, better video players such as mVideoPlayer, better music apps such as DoubleTwist or WinAmp or a dozen others, streaming options like Slacker, etc. Point is, its flexibility allows it as a media device to functionally match or surpass the iPhone and Windows Phone 7 quite comfortably, even if not as fluidly or naturally. So it's not in its technical abilities that Android fails me. It's merely in one simple overlooked place: audio mixing.
Android seems, under most circumstances, unable to mix two disparate sources of audio into its output at the same time. When playing music, a video, streaming audio, playing a podcast, etc., any other audio playback that occurs (such as the variety of notifications your dozens of apps can use to get your attention, carefully customized to exactly your needs, or directions from your navigation software), the OS will simply kill whatever audio track was already playing for as long as it takes to play back the other audio (including any dead silence that was included in the clip before or after), and then continue playing the original line of audio. It doesn't pause the audio, it merely mutes it. When playing back music this is unbelievably annoying and distracting, and when playing back an audio book or podcast it's simply unforgiveable. The number of times I have to hit the skip back button in BeyondPod to see what I missed because an email came in while I was enjoying the latest Drabblecast is ridiculous, not to mention mildly unsafe. And even in music it leads me to avoid using Slacker or my other amazing music sources when I have guests in my car because it's simply embarrassing to have the audio constantly shut down while we're trying to enjoy ourselves. I find myself apologizing for it or simply shutting it off and switching to FM.
So far Google seems unconcerned with the issue despite the large number of complaints in their support sites about it. The problem's existed throughout every version, and it doesn't seem to be acknowledged. But it's enough to make me consider digging out my Zune again just for audio, except it still fails to provide me the streaming options I've grown to expect since switching to Android.
Another smaller failing in this area is Android's handling of Bluetooth when there's an audio cable plugged into the device. It seems to assume that if I have anything plugged into the headphone jack that I must prefer to use that as my hands-free solution instead of the paired and connected Bluetooth headset. This might make sense if I were using the included headphones with microphone built in, but it's a failed assumption when I'm in the car and have an audio cable plugged into my sound system. It's even more of a failure since it doesn't notice that my audio cable doesn't have a line for microphone, can't deliver audio to it, and doesn't leave the phone's built-in mic open. So when I'm driving and listening to music through my phone and I get a call, despite having my Bluetooth headset on and in my ear, I have to reach over and unplug the audio cable from my phone and then answer the call, otherwise I hear my caller through my car's speakers and they hear nothing in response. The iPhone, as far as I've witnessed, actually asks you which device you want to answer through when a phone call comes in, routing to your Bluetooth or other options accordingly. Presumably if you were to hit the answer button ON your Bluetooth it would be smart enough to route there. Android still doesn't do this.
These issues aren't enough to override everything that I love about Android, but they are enough to cause some audible profanities in my car for reasons I don't think are necessary. These SHOULD be easy to fix, as even Windows Mobile, for all its failings, worked fine in these circumstances. And yet, at least for now, they remain untouched. Google's lack of concern on these types of matters seems to border almost on Apple's methods of telling their users their desired features don't matter, except Google instead simply ignores the problem entirely. It's unfortunate, and I really hope it improves. While I'm sure there are other issues with Android that bug me, if these two problems were resolved I'd feel as close to 100% happy with it as I could in a technology world with a constantly moving target of expectations. Let's shore this up and move on.
... Hmm... Personally, I love the Android OS, but I'm not one who really cares that much about audio/video on it (mainly I don't care about video; audio I use in spades). So yes, I agree that improvements probably could be made in that area, I guess. I'm not the one to ask though, since I don't really use anything but one audio source at a time for the most part. I detest "voice assisted" GPS, and that's about the only conflict I can think of that I've ever experienced.
ReplyDeleteWhich is odd, because I don't believe I have the same issues that you do. My music files and BeyondPod playbacks all _pause_ on things like incoming calls, and my GPS talks over the currently playing media; it doesn't interrupt it at all. Same with notifications- they play over the media file, they don't interrupt it. 2.2/2.3, both stock (rooted) and Cyanogen 7 (which I'm avoiding talking about exclusively since it isn't stock, but I don't really see why anyone WOULDN'T run Cyanogen)
I hate the iPhone for a lot of reasons, mainly that its popularity only validates my observation that people are retarded and buy whatever is trendy over whatever is functionally better. But another reason is that the iPhone is the smart phone for everyone, especially dumb people. And kids. the iPhone was built like a toy, and while it does games well and all that stuff, I don't care about that. I want my phone to actually _do_ stuff I want it to do that it _can_ do...which is to say, I care about actual apps and productivity and internet-based non-entertainment applications. And especially now, Android-based hardware has almost caught up with the iPhone in terms of gaming and stuff. If I wanted to do all that gaming and video stuff I could, but it's nice having the option, as opposed to the iPhone's North Korean-like restrictions on everything.
The bluetooth issue, however, IS one of my biggest gripes as well. It's something which is so annoying and affects SO many people, it's not like they missed it. There's ways to sort of work around it, but that shouldn't be necessary.
I'm still perplexed by what seems to be a constant occurrence of interrupted audio with your phone, though. I rarely get that, but it seems like it's plaguing your device for some reason. Quite odd, but I don't know what else one might have going at the same time beyond 1 media file, intermittent GPS speech (which is fucking irritating so mute the shit) and intermittent notification sounds (again, most of mine are off, since I can just look at the screen and do so often).
Well, you touched on something important: You're running CyanogenMod 7 which is, as far as I'm aware, the ONLY build of Android that fixes my audio complaint. The official versions don't, and no manufacturers or carriers have bothered to fix it. As for why someone wouldn't run CyanogenMod 7, you are aware that it's not available for every Android phone, right? For instance, the Epic 4G is unsupported by it, and that's the phone I own. Kind of a sticking point against using it.
ReplyDeleteBut as for my issue, you're likely perplexed by it because you're not running a ROM that has the problem, so can't recognize just how excessively problematic it is. I'm not running several media files at a time (not sure what makes you think I am); my complaint is ONLY over notifications interrupting. But during the middle of a workday I might get work email notifications, personal email notifications, text messages, and who knows what else anywhere from a few times an hour to a few times a MINUTE. When listening to a podcast (also BeyondPod, which does NOT pause the audio but mutes at least part of it) or music this completely ruins the experience. And while I can mute the phone, I then lack awareness of potentially important messages. You have different notification needs/desires which also account for you being less aware of this issue.
My main point, though, is that this should be easy to resolve officially in a way that makes everyone happy. If it's not an issue for the two main competing OSes, there's no reason for Google to have ignored it so far.