Change fontsize: 60% 70% 80% 90%

Record2Me

Nowadays multimedia and mp3 players such as iPod have invaded a large part of the market. These systems promote a different model to access media: Podcasting (http://en.wikipedia.org/wiki/Podcasting).

In this model, contents are held on a server and are transferred towards the device through an explicit download or by means of a schedule defined by the user (push model).

One interesting application of podcasting is to provide users a remote recording service. Such a service will record digital content distributed via DVB based on the schedule provided by each user. Once the content is ready it is published using a podcast feed and user device will download the recording inside it's local storage.

Faucet PVR (http://www.vcast.it/faucetpvr/) is a web-based application that implements such kind of application. It allows a subscribed user to schedule the recording of one or more channels (even at the same time) and supports both Digital Terrestrial and Satellite channels. Recordings are stored in the server as long as the user downloads it using a podcatcher (for example iTunes).

The aim of this project is to provide an ubiquitous access to the service offered by Faucet by developing a mobile application that can be used to create and manage the recordings.

As stated before Record2ME is an application built using J2ME platform that resides into a smart-phone. Record2ME interact with Faucet server through an Internet connection, so it is implicit that the phone must have network capabilities such as UMTS or GPRS connectivity. The server exposes the mobile user the same methods and resources found on the web-based interface, so no additional skills are required by the user that typically accesses the service by her browser.

The GUI is composed of a series of forms and list views that guide the user through the application flow control. A number of alert notifications are used to provide feedback to the user about ongoing operations and their results. These are particularly useful to keep the user informed during the long delays caused by the connection latency.

The first step of the interaction is the login form. Afterwards the system shows the main menu (see the following screen-shot).

Record2Me main menu

The TV guide in this firs implementation is only a place-holder: we are thinking how to integrate it using existing EPG.

When creating a new recording, the user should provide the following information:

  • Date and time (when start/stop the recording);
  • TV channel (the radio/tv channel to record);
  • Recording name (a descriptive name for the recording);
  • Frequency (single/daily/weekly recording).

The main UI design challenge was to reduce the number of information that the user has to enter. We decide that:

  • the system must provide default values for all required fields;
  • all requested fields (with the exception of the recording name and date) are drop-down lists. In this way we avoid user from typing text.

The following screen-shot shows how the user can choose among the available TV channels.

Record2Me choose channel

Recordings list has an interface similar to that of SMS list as shown in this screen-shot.

Record2Me recording list

Each recording is identified by the TV channel name and by the descriptive name entered by the user. If the user wants to modify the selected recording, the system shows the user a form that looks like the one used during the insertion. This can be done using the context menu or by pressing the action button of the telephone on the selected recording.

Record2ME interacts with Faucet server using a simple interface based on the REST (Representational State Transfer) model. REST (http://en.wikipedia.org/wiki/REST) is an architecture style of networked systems that outline how resources are defined and addressed within a network. In a looser sense, REST can be considered as a way to describe any simple interface that transmits domain-specific data over HTTP without an additional messaging layer such as SOAP (http://www.w3.org/TR/soap12-part0/).

Following the REST model, resources are identified by URLs and their state is represented using a standard format. This REST interface uses JSON (http://json.org/) to represent channels and recordings.

Record2Me is still under development, in particular we would on the following aspects:

  • increase the number of device supported;
  • integrate an EPG to further simplify the programming of recordings;
  • preview of recordings through streaming on the phone.

Record2Me has been released under GPLv3 License and can be downloaded from SourceForge (http://sourceforge.net/projects/record2me/).