[linux-dvb] What do you think of mpsys library ? (for ca_zap)

Kenneth Aafløy lists at kenneth.aafloy.net
Fri Apr 1 18:25:04 CEST 2005


Hi,

On Friday 01 April 2005 17:53, Dominique Dumont wrote:
> Manu and I are currently exchanging ideas (and code) related to the
> next ca_zap (i.e. the small user space application in charge of
> sending a ca_pmt message to the CAM on a Twinhan card).
> 
> We are thinking about providing a library to parse PAT and PMT and to
> generate an EN50221 CA_SET_PMT message.
> 
> I've seen that mpsys library [1] alreasy provides a C library to parse
> PMT and most of a TS stream. Using the XML protocol description, it
> should be quite easy to provide an EN50221 parser also.  (although,
> I'm not so sure about the encoding part of the EN50221 messages ... I
> may have to dust off my XSLT cookbook )
> 
> What do you think of this library ?
> Is there any reason not to use it with dvb application ? 
> Or not to recommend it ?

I'm not sure why you want to bring xml into this picture? Abstracting?

I'm thinking:

We merge the code from *zap and scan in a library, similar to the alsa library.
Importing common features such as the vdr ci code (which is used by at least
mythtv and iirc videolan), then provide a common method of tuning that includes
the quirks of handling an associated cam. The library would have control over
a configuration file that resides in etc, which the application may or may not
use as it sees fit. Both the in kernel frontend and ci threads could
potentionally be moved to userspace, reducing the kernel driver footprint.
The interface of this library must offcourse be pondered on, as it should remain
very stable and allow extensions that potentially could be introduced by new
adapter types. IIRC there is also an implementation of ts2ps (or similar) in
the kernel that could be ripped out.

The CAM handling could then be very simplyfied, allowing either the application
or the library (plugins?) to handle the features of decrypting the stream. IIRC
Marcus Metzler pointed out to me that there are meny methods of controlling
decrypting a stream, that involves controlling a remote device, which also
would fit well in this picture.

We could start simple, just providing the features of handling decryption, then
put in other blocks to handle other aspects of dvb.

What do you think?
To radical a goal?

Kenneth




More information about the linux-dvb mailing list