Hello!

I recently started to work on adding DVB-S2 support to the existing DVB Demux 
in Linux-DVB.
With "DVB-S2 support" in the context of the demultiplexer I mean interfaces 
which allow to access DVB-S2
Base-band frames (BBFrames) and Generic Streams (Packetized and Continuous), as 
well as a software 
implementation which processes BBFrames and dispatches the data to different 
feeds (if not done by the card driver itself).

What I did is to add a new feed type "struct dmx_bb_feed" in demux.h. Functions 
for allocating and releasing
bb feeds were added to the Demux interface (struct dmx_demux) and are 
implemented by the DVB demux 
(dvbdmx_allocate_bb_feed and dvbdmx_release_bb_feed in dvb_demux.c,dvb_demux.h).

A bb feed can be allocated for a specific ISI or for all ISIs. Currently the 
following modes are supported:
        + BB_FRAME      Deliver full BBFrames (incl. header) to demux feed 
(default)
        + BB_PACK_GS    Deliver Packetized Generic Stream to demux feed
        + BB_CONT_GS    Deliver Continues Generic Stream to demux feed
        + BB_TS         Deliver Transport Stream (if stream is using 
TS-Compatibility mode) to demux feed

Although the DVB demux is very TS-specific (especially struct dvb_demux_feed) 
and
dvb_demux.c is already very complex, some reasons why I put it there are:
        - Try avoid code duplication
        - Keep demux-stuff at one place
        - Try to add BB-Frame support with minimal changes 
        - Can be used by existing drivers without much change

I created a Mercurial repo for this project, which is available under
http://www.cosy.sbg.ac.at/~cpraehaus/hg.cgi/bb-demux

Currently, I'm testing the whole thing, especially the handling of packetized 
data.
It will also soon be possible to feed TS packets received from DVB-S2 Base-band 
frames to the
TS demultiplexer, which then in turn can reassemble sections, for example.

Next step would be to extend the DVR device (), so that DVB-S2 "Base-band data" 
can be read in user-space.

Cheers,
Christian.

-- 
Christian Praehauser <[EMAIL PROTECTED]>
|| //\\//\\ || Multimedia Communications Group,
||//  \/  \\|| Department of Computer Sciences, University of Salzburg
http://www.cosy.sbg.ac.at/~cpraehaus/
http://www.network-research.org/
http://www.uni-salzburg.at/

_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

Reply via email to