Lorenzo Gariano
Lorenzo Gariano who runs Botany Bottle and looks after the plants at the Open University's Knowledge Media Institute, will be climbing the Matterhorn and sending live audio reports and just-in-time photos using a Nokia 7650 GPRS phone/camera. All this is part of Lorenzo's fitness-building for his Seven Summits activities: climbing the highest peak on each continent (read more about Lorenzo's Seven Summits quest).
Learn how the Webcast works
The Matterhorn Webcast
A Technological Perspective
The Challenge1. To use a mix of 'genuinely-domestic-level' technologies to bring Lorenzo's climb right here to us (wherever we are in the world). So no satellite or video phones, a genuinely tight budget and very short timescale!
2. To test (in extremis) Macromedia's new MX serving of AV technologies.
Critical Research Topics
Presence - Where are you (physically and virtually)? And what "state" are you in?
Telepresence - Can you and I share this experience over a distance?
The Technologies
The PhoneThe Client
What is it? A Macromedia Flash 6 movie which can handle both external data and connections to the Macromedia Flash Communication Server MX.
How does it work? The Flash movie picks up data, like location, latest pictures, latest audio messages and displays it dynamically and automatically. Flash allows us to do all this in a single application and handle the data flexibly and quickly.
To speed development we decided to make use of Macromedia's free pre-built Comunication Components.
These are drag and drop items that allow a connection to be made with a suitably configured Macromedia Flash Communication Server MX.
Five were chosen for this project:
A log on component
A chat component
A colour picker component
A status component
A streaming audio/video component
These are relatively easy to use in their standard format, although somewhat harder to re-configure or re-skin to any major degree, possibly because we were using the available downloads. A simple reworking of some of the component's assets was however used to conform to the overall page design. The streaming component was positioned off-stage as only it's audio streaming function was required.
A painting of the Matterhorn formed the background to the Flash movie. Positioned on this, along the proposed route, are a series of movies containing a 'dot' and a button. These only appear if a picture has been sent from the location they mark and provide the user with a way of viewing the pictures in context. The url's to the pictures are dynamically updated for each button. The latest photograph sent from the Matterhorn is inserted at the time the user first loads the page. If an older photograph is chosen to be viewed by the user, a button appears allowing the reloading of the latest picture. This is achieved by comparing the picture's file name which is 'time-stamped'.
The live audio message from the Matterhorn is streamed straight into the browser via the Flash component. It is recorded at the same time 'at source' and an MP3 file created. This information is sent to the user's Flash movie. When new sound information is received, a button with the correct url appears in the 'Audio Replay' submovie. This movie contains a dynamic list of the ten most recent sound files. When the user clicks on a button, the main streaming audio is muted and the recording streams from the server. This movie also contains a 'Mute All' button for the user's convenience.
The dynamic nature of the Flash content is 'driven' by the periodic request for a string of variables. If a 'key' variable has altered within this file, then all the relevant variables and sub-movies contained within the Flash are updated.
The result is a good 'fit-for-purpose' application created within the project's time constraints, greatly aided by the Macromedia Communication Components. Given more time the interface could be made more 'flashy' and 'animated', although of course the user would have to download the extra graphics...
The Web Server
What is it? An Apache
web server with PHP
installed, running on a Windows
2000 Server.
How does it work? Most of the clever stuff on the server is driven by PHP scripts which permit the dynamic generation of web pages and the live updating of the client's Flash movie with the latest picture and audio status.
The server is configured to regularly run a PHP script which retrieves emails from the webcasts email account. If a new email has been received with a picture attached (i.e. sent from the Nokia 7650 phone which Lorenzo is using during his ascent of the Matterhorn), the PHP saves the image, creates thumbnail copies, and updates a status text file. The client's Flash movie regularly accesses another PHP script on the server, which gathers together the latest information (i.e. pictures, audio file lists etc) and returns this to the client's Flash movie.
Another function performed by PHP scripts is to create the 'Chat History'. A Flash movie was created specifically for this purpose. This Flash movie is connected to the webcast via the Flash Communications Server MX, and as a result receives all the Chat messages like any normal client, however, it also regularly calls a PHP script with the latest messages. This PHP script appends the new messages to a text file to create a permanent record of the chat.
Other PHP scripts are used to dynamically generate the 'Gallery' of photographs, 'Phone Replays' and 'Chat History' web pages.
Some obvious questions
Why didn't we use video?
Are you kidding! Video over GSM!?! Not in my current dreams (yet).
Seriously, the data-rate we are likely to get for the piccies will mean that each photo will take maybe 1-2 minutes to reach us ... we need all the available datarate of live for voice. We werent confident that GPRS will work on the mountain (keeping our fingers crossed about GSM connection!) and we aint holding our breath for 3G features ... but one day ...
Why didn't we use the classical KMi Stadium technologies for this event?
For the challenge! We thought that, if we were going to do this, we should try to stretch Macromedia's new MX technologies - which are actually closely related to the systems we have based our own techhnologies upon. In the MX release of their servers, Macromedia have stressed the (smaller scale) multi-party features - esp. plug and play multi-party audio/video. This is potentially so cool, that it was worth setting aside our own scalable broadcast systems for this gig, to see what MX could do for us - right out of the box! Actually, in our development we found that this particular application was much more suited to our own KMi Stadium architecture, but we persevered and are extremely pleased with the results!
Why the Nokia phone?
It is a single unit (very important not to muck about with lots of fiddly extra plug-together pieces for a climber), released in the UK the week before the actual climb. The lens aint great - but hey, it is a phone! - and we felt that good lighting up the mountain might compensate for this. Also, it is robust, good battery life and simple to use - especially, it involves remarkably few button-presses to send a photo. Definitely, a must have piece of kit - which I can already think of a dozen other cool uses for - (I just need to figure how to switch off that annoying and cheezy photo-click sound it makes when you hit the capture-photo button ;-). Initially, I liked the 'totally handsfree with bluetooth-headset' concept for 'talking with ones hands full of rock'; but then this just sounded way too dangerous! So we compromised, and asked him to only consider using it when he could relax and was quite, quite safe!
Why use a Phone Server?
Lorenzo will be setting off up the mountain (and have some interesting things to say) when all of us back home will be asleep! We need to capture what he is up to on the server (for when we wake) AND send it out live (automatically) for those folks in the world who aint as sleepy as us. We have successfully used a variety of phone-the-web servers for other projects such as 'read the news' systems for Rostra News and most especially for 'yearbook entries' in the Virtual Degree Ceremony. So a system that could answer the phone for Lorenzo, take his chat and pump it to the live server plus archive it to the web, was a piece of cake.