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.

DVB utils

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

Video4Linux utils

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

It also provides tools to manage the remote controller tables available on most media devices.

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


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.

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.