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
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb