Anatomy of V4L-DVB devices

From LinuxTVWiki
Revision as of 22:46, 28 September 2004 by Holger (talk | contribs)
Jump to navigation Jump to search

Introduction

Digital Video Broadcast Receivers exist in many different flavours. In order to give you an idea of what we all support with the linux-dvb drivers and why some things look quite complicated this page lists the common types:


Minimal Configuration

A minimal device for DVB receiption at the PC consists of a DVB Frontend amd some FIFO Memory. This FIFO samples the MPEG2 Transport Stream delivered by the frontend and makes it accessible (e.g. by a port-interface, memory-mapped or a bus-interface like USB or IEEE1394) to the host processor.

All modern peripheral DVB devices follow this approach: common PCI cards, nearly all USB adapters and IEEE1394 DVB devices. Only they are supported directly by Microsoft's BDA architecture.


PCI Cards with onboard MPEG Decoder

Here the DVB Frontend is connected to the AV711x hardware MPEG2 Decoder. This decoder shares a dualported RAM with the PCI bridge where the MPEG2 Decoder has it's Video Frambuffer.

Examples:

The Onboard Decoder makes these cards somewhat expensive.


Standalone STB

In a SetTopBox the Frontend directly feeds the built-in hostprocessor (usually with onchip MPEG Decoder). These processors are mostly based on embedded ARM-, MIPS-, PowerPC-Cores with additional peripheral units like i2c-, IDE-, network-, Smartcardcontrollers, Demultiplexers, Decoders, Audio- and Videointerface.

Modern STB processor chipsets move more and more decoder tasks into Firmware or software, this allows implementation of new codecs like DivX, MPEG4, WMV and even late updates of products in the field. We expect that this evolution continues.


STBs with interface to the PC

Have an integrated embedded processor with MPEG2 Decoder and are able to work standalone. You can connect your PC, e.g. using the USB or Firewire port to record and play back DVB transmissions on your TV.