The problem of watching the live video on a cell phone

Y. B. Karasik
Thought Guiding Systems Corp.,
Ottawa, Canada.

Researchers at a telecom company were working on providing the cell phone users the ability to watch the live video from various remote cameras. It was supposed that the list of accessible cameras would appear on the screen of a cell phone when user invoked such a feature. By clicking on a particular camera in the list the live video from the camera would appear on the cell phone screen.

All features on cell phones are invoked by starting the corresponding program. Thus, to implement the above feature, some program that would run on a cell phone had to be written.

That is why the reaserchers turned to studying the available technologies of writing programs for cell phones. They found that the most versatile and widely used was Java for Microdevices (J2ME). They studied tutorials on using J2ME which contained examples of how to write Java programs to display a list of items on a cell phone, how to play video on a cell phone, etc. The researchers decided to take these examples as prototypes.

Based on the prototypes, they developed their own program that displayed the list of cameras on the screen of a cell phone and which instantiated and started a Java media player object when a camera from the list was clicked on.

Unfortunately, they discovered that the Java media player can only play pre-recorded video. The live video did not work. The difference was in the type of protocol used. The recorded video could be brought using HTTP protocol (the very same which is used to bring you this web page). But the live video uses RTSP protocol. (RTSP stands for Real-Time Streaming Protocol.)

The researchers discovered that J2ME currently does not support the later protocol. But they also discovered that the web browser built in all contemporary cell phones understands RTSP protocol and displays the live video if pointed to an address which begins with RTSP:// (rather than HTTP://)

The researchers decided to make use of this discovery and modify their program as follows. When user clicks on the link to a camera in the list, the built in web browser starts and points to the address of the camera (which has the form of rtsp://xxx.yyy.zzz).

While working on implementation of this idea, they discovered that to start the browser from J2ME an internet address had to be provided as a parameter to a routine which starts the browser. The routine starts the browser and points it to this address. Null address is not accepted. The routine also rejects addresses starting with rtsp://. It only accepts addresses starting with http://.

Then they decided to start the browser by providing some fake http:// address and after browser started update its address to one beginning with rtsp://. However, they found no J2ME routine that could update internet address on already running browser.

Now we are in a position to ask the sacramental TRIZ question:what is to be done ?

HINT: The reasearch group consisted of two people, one of which knew TRIZ well and another did not hear of it at all. The solution was found by that who had no idea of TRIZ. But retroactively the other one recognized all relevant TRIZ elements in the solution.