At McLaren Labs, we’ve been experimenting using Sensr VCam for iPhone as a 3G/4G mobile video upload platform broadcasting from both motorcycle and automobile. A moving automobile is a challenging environment in which to run a video upload application. A moving motorcycle is even more interesting (at least to me). As a motorcyclist, not only would I like to capture video footage in the event of a mishap, I also enjoy sharing my two-wheeled adventures in nearly real-time as I am having them.
These are conceptually very different uses of a mobile video feed: video capture, and nearly real-time sharing. What sorts of considerations should the architect of a mobile video upload app be aware?
Does it need to be transmitted real time?
I think it’s interesting to be able to share a live-view of where I’m traveling with a few people. A GPS position indicator showing where I am would be interesting too along with the video. In this situation, the video feed is not used for real-time communication, it’s near real-time simulcasting. Latency on the order of seconds is acceptable. A mobile video upload application can trade latency for enhanced visual fidelity.
How are cellular drop-outs tolerated?
A mobile video upload applications needs to anticipate that it will lose connection with the network for short, or even extended periods of time. What should the application do? If the application is mostly for entertainment, it probably makes sense to reduce the resolution and frame-rate while maintaining continuity. If the application is security, high-resolution photos or bursts that intelligently capture a criminal event would be more appropriate.
Why store video data in the cloud?
Video data should be moved off device to somewhere useful as soon as possible. It should happen without at dock or wire, and it should require minimal human intervention. Whether real-time from the road, or when you get near a base-station, video should just be in the cloud where it can be useful to someone.
What is the cost of 3G/4G bandwidth?
Current market rates for mobile data plans show the following from a variety of providers:
1GB/mo for $29. 5GB/mo for $59 (http://autonetmobile.com)
4GB/mo for $30, 6GB/mo for $40. (http://verizon.com)
1.5 GB/mo for $25. 5GB/mo for $50. (http://mobile-broadband.t-mobile.com/plans)
5GB/mo will handle approximately 100,000 VGA quality JPG images. A a frame-rate of one image per-second, one hour of continuous uploading per day is possible. Using H.264 encoding adds audio and more frames-per-second within the bandwidth envelope stated, but does not significantly increase the resolution.
How to handle out-of-order data?
Between drop-outs, TCP retries and cell-tower handoffs, much of the video data uploaded does not arrive at the servers in strict timestamp order. Some amount of buffering time can be allocated for reassembling data after it arrives. This may impact near real-time viewing. Recording and playback of archival footage is also affected.
In contrast to the portable hand-held environment, a motorcycle or automobile has plenty of power for the video upload device. Thermals are a concern however. Over extended periods of time we have noticed our mobile 3G/4G modems overheating and going into thermal shutdown.
Dash-cams with TouchScreens and WiFi: http://forum.dashcamtalk.com/viewtopic.php?f=12&t=537