Projects in

Linux Kernel Media drivers

The media drivers for the Linux Kernel Subsystems, which consists of devices for webcams, analog TV, digital TV and remote controllers. The video4linux subsystem was included on Kernel 2.2, and the dvb and remote controller subsystems were included in the 2.6 Kernel.

The media_tree.git contains the latest development drivers. In order to test them, a media build tree is provided, allowing the compilation of the media drivers without the need of changing the entire kernel. It currently supports kernel versions from 2.6.32 to 3.x.

The v4l-utils media utilities and libraries

Provides a series of utilities for media devices, allowing to handle the proprietary formats available at most webcams (libv4l), and providing tools to use and test V4L, DVB and remote controller devices.

More details can be found at the v4l-utils wiki page.

They are available at the v4l-utils.git repository.

The Digital TV channel scan tables

Most digital TV applications need a channel table in order to scan the available channels on a given city/country. Those tables are maintained by this project.

They are available at the dtv-scan-tables.git


The Xawtv application allows to watch television at the PC. It were written by Gerd Hoffmann and is probably one of the first applications available for it. There are two versions of xawtv available:

Xawtv 3.x: Supports only analog devices (TV and webcams).

Xawtv 4.x: Supports both analog and digital devices.

They are not being actively maintained, but, from time to time, we add bug fixes and eventually new features, expecially on Xawtv 3.x, since most distributions pack it.

TV time

The tvtime is a high quality television application for use with video capture cards on Linux systems. tvtime processes the input from a capture card and displays it on a computer monitor or projector.

It is available at the tvtime.git

Old projects not maintained anymore at


libsoftmpeg is a ffmpeg/libavcodec based software mpeg decoder library. It currently uses DirectFB and FusionSound for video and audio rendering, but the code is structured in an way which makes it easy to add different rendering methods.
A VDR plugin is included.

MPEG2 multiplexer

An ISO-13818 compliant multiplexer for generating MPEG2 transport and program streams, developed and maintained by Oskar Schirmer. The TS multiplexer is able to run continously, with dynamically adjustable input streams for live broadcast.
Visit the MPEG2 multiplexer project page.

DSM-CC/MHP object carousel generator

MPEG2 elementary stream encoding tools for DSM-CC MHP ObjectCarousels.
What the dsmcc-mhp-tools support:

  • generation of an ObjectCarousel
  • generation of (continuous) NPT descriptor streams
  • generation of StreamEvent descriptors
  • generation of AIT
  • generation of PMT
  • distribution of an ObjectCarousel over multiple PIDs (DataCarousels)
  • incremental ObjectCarousel updates


A mirror of the diet libc CVS. The main repository can be found on

DVB-USB2 hardware prototype

Schematics, firmware and driver sources for an USB2 DVB-T adapter prototype.

Philips Empress / Kfir MPEG2 encoder card drivers

A driver for the Visiontech Kfir based encoder card which used to be manufactured by BMK electronics.
Note: So far this driver supports 2.4 kernels only.

The newer MPEX card by BMK is supported by drivers in the mainline 2.6 kernel.

Both Kfir and MPEX cards are now out of production, but there is some legacy information still available.

Margi/Billionton MPEG decoder PC card drivers

An old driver for a "DVD to go" MPEG2 decoder PC card, including zoomed video support.

DVB utils

A small number of DVB test and utility programs, including szap and dvbscan, are in the dvb-apps mercurial repository.