« February 2009 | Main

March 16, 2009

4G Devices and 4G Services needed for 4G Networks

I reach out to developers and ISV's and device makers with a common plea these days: Make 4G devices! Make your 3G services into 4G services! I have a 4G network- let's use it right! You must think I'm crazy. Companies are spending billions on 4G networks, why am I concerned about services and devices for them? It's simple, you have to differentiate. It is pointless to take a 3G application and put it on a smartphone with Wimax in it. The application will perform the same as on a 3G network and that is not a selling point (and if multimedia is involved, it won't perform well). I look at the mobile IDE's today- Flash CS3, Android SDK- and see they let you do things like simulate a network and its latency. Only problem is they stop at 3G. Where's 4G? How much extra work must a developer do to modify a toolset for 4G development? The fact that these tools don't let you just plug in 4G as your network is a barrier to 4G application development. Another barrier is that the tools let you provide a fixed throughput only, which is completely unrealistic. Mobile network characteristics are always changing. How about a tool that provides variable bandwidth, even connection loss, so that better testing can be done? Here are some examples of problems I have seen in the past couple of weeks: mobile youtube- all the goodness of 3gp streaming video at 80 kbps. Awful quality. mobile slingbox player- client prevents entering a value above 600 kbps. Also, the audio settings cannot be changed at all. On today's 800 x 480 screens running Windows Mobile 6.1, you really want a higher data rate than 600 kbps, whether over wifi or wimax. Speaking of wifi, the CPU is used in some chipsets so that you can't play good video while downloading the video. (Newer chipsets have an embedded processor for doing the wifi MAC work.) Chipsets that support video decode only. Hardware encoding is required for cool things like high quality video chat on a mobile device. Video cameras that only record in 3GP format. Media players that can't play h.264 (licensing cost, issue, I guess) General embarrassing software quality problems: Various video apps not taking advantage of devices with a front and rear camera Video images shown upside down with no option to flip the video Apps that rely on GPS only for location (most people are indoors most of the time, where GPS is useless)- ever hear of Google Gears? A map application that lets you scroll up and down but not side to side. Who really wants to travel east or west, anyway? I could go on, but it is too painful.

March 05, 2009

Mobile Youtube Problems

Have you tried mobile youtube on a handset? It's pretty bad, unless you know a trick or two (and having to know tricks to using software is also pretty bad).

First, http://m.youtube.com is worth staying away from if you have a smartphone on a 3G network, Wifi, or even better, Wimax. It works, but only delivers QCIF (176 x 144) video at ridiculous low data rates (tops out around 80 kbps). What's worse, is someone has been writing custom youtube apps to play this bad video at double the size. This makes blocky video look even worse. Nice move. Maybe the newly announce youtube premium music video site will get it right (but only if they read on...)

Now some youtube apps on smartphones have a 'high quality' mode. I tried that over Wifi on an HTC device and found the quality was worse than the dumbed-down mode described above. How can that be? Someone seems to have forgot that downloading video uses the CPU. In short, trying to playback video while downloading it (which is exactly how youtube and any progressive video site work) causes such trauma to the CPU that the video is jerky, drops lots of frames, and the audio completely loses sync. Any basic testing should have caught this, so shame on you for failing to test properly.

I had a hunch about the cause of the problem, so I started a video in high quality mode, hit pause, and waited for it to complete downloading to the phone. Then I played it back and it was beautiful. Perfect, smooth, full-screen video with audio in-sync. So why doesn't the app warn people about this problem and suggest downloading the video first for optimal playback? How hard is it to read the CPU usage? Why don't these players cache the video?

This is just another example that many developers are just plain bad at developing for mobile devices and definitely not ready to handle 4G devices. People seem to have forgotten about device constraints. Or worse, they fully embrace them and put out video chat clients that use 70kbps up and down for video for that rich, 3 frame per second experience with bad audio you are dying for. Yes, these nightmare products exist and are completely unusable.

The moral of the story is that 4G is coming and you better be prepared to handle a new breed of device if you want to suceed. Location based services, context aware applications, apps that know your wireless radio conditions and how to adjust themselves properly (all topics I write about)- these are the new tools required in the holistic programmers toolkit.

 

 

 


 

 

 


Hosting by Yahoo!