The Linux4.TV Set-Top Box Open Source Project

Here are the details on the new Linux4.TV development kit we're giving away in our development contest. Find out about MPEG playback, video capture, HTML-based interface and more.
WebMedia and Applications Layer

The top layer includes all applications software as well as Century's WebMedia, which provides the user interface for the set-top box. WebMedia allows the user interface to be created entirely in HTML, utilizing plugin modules to interface from HTML to the Video Middleware subsystem. The graphical interface is created by providing an HTML representation of the desired display using images combined with an included script to call a plugin module on associated events. Included in WebMedia is an integrated web browser, allowing easy internet access by the set-top box user. A screenshot showing a sample user interface is shown in Figure 4.

Figure 4. Sample WebMedia HTML-Based User Interface

WebMedia is a modified version of the ViewML internet browser and uses the FLTK widget set, which allows it to be portable on Microwindows and the X Window System. Because the Video Middleware is separated from the graphical windowing system, it is relatively easy to switch windowing systems. Integrating another browser with the system is straightforward, using the extension mechanism described below.

The entire user interface for the set-top box is written in HTML, which includes both the full-screen viewing and menu-button operations. This allows the set-top box look and feel to be customized easily. Two mechanisms are used to integrate video into the display. The first mechanism involves an extension to the HTML Anchor feature, which allows a specified WebMedia plugin to execute using parameters contained in the anchor tag. For instance, the following HTML causes the DVD plugin to execute a rewind request:

<a exec=/bin/wmcmd,dvd,rew><img src=images/rewind.gif>

When remote-control arrow keys are pressed, WebMedia outlines successive images associated with anchor tags, allowing the remote control to be used as a pointing device. The prebuilt WebMedia DVD plugin will execute when the remote control is used to select the rewind.gif image. The prebuilt plugins call the Video Middleware API to control the STB hardware functions. Other commands are used to position and scale the video. The second mechanism maps a video stream to the display screen, using the overlay API. A special RGB color is displayed normally on the screen using an HTML image, and color keying is used to merge the video data with the framebuffer contents. This is performed in real time directly by the Geode SC1200 CPU.

In normal operation, the Linux4.TV set-top box runs WebMedia as the controlling application, with HTML specifying a variety of plugins to control the video system integration and user interface. In this manner, the set-top box user interface and total system operation are easily customized for a variety of applications.



When not at the office detailing plans for building new-age PDA applications technologies, Greg Haerr sits at home in front of his terminal enhancing Microwindows. Greg is CEO of Century Software and the chief maintainer of the Microwindows Project. He can be reached at


White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState