[linux-dvb] How to handle multiple frontends?

Manu Abraham abraham.manu at gmail.com
Mon Jan 15 13:39:06 CET 2007

On 1/15/07, Ralph Metzler <rjkm at metzlerbros.de> wrote:
> Klaus Schmidinger writes:
> > I'm wondering how an application is supposed to handle
> > devices with multiple frontends.
> >
> > Let's assume a device that provides
> >
> >   dvb/adapter0/frontend0        DVB-S
> >   dvb/adapter0/frontend1        DVB-T
> >
> > so that it can receive both DVB-S and DVB-T. Does this
> > mean that it can simultaneously receive one DVB-S transponder
> > and one DVB-T transponder? Or can it receive either a DVB-S
> > *or* a DVB-T transponder, but not both at the same time?
> Hmmm, good question. I only have some devices which can do
> simultaneous reception. But I think there are some with
> different tuners sharing TS outputs as well.
> Since the open is not handled by the driver itself we also cannot lock
> the frontend accesses against each other.

There are 2 different cases

(1) multiple frontends sharing the same TS interface
(2) multiple frontends, each having it's own TS interface.

Maybe those should be handled like one multi-protocol frontend?
> Not sure if Manu's multi-proto stuff would also handle this across
> different tuners. We would need another layer of abstraction.
> Or should just the demuxes lock against each other? So, if one
> demux has filters set, the other one will not accept any.
> I guess the frontends themselve work at the same time, they
> just share the same TS input?

for (1), they just share the same TS interface which is already implemented,
but when we have a derivative of (2) multiple frontends, we can have say for
example 4 frontends with 2 TS interfaces or 3 TS interfaces.

in this case the frontends could be handled by either of the TS interfaces,
depending on how you configure it.

We'll definitely need some better input handling for those new cards.
> E.g. if you have 2 demuxes connected to 2 frontends or data from the
> PC, 1 or 2 decoders on the card, one or more of those new USB CAMs serving
> one of several cards, etc.
> I'm starting to do some hacking with something like modified V4 API +
> multi-proto frontends + other goodies ...

I was thinking in the lines of the adapter object that i worked upon
earlier, adding functionality to the same such that device functionality is
abstracted by the user application through the adapter object. Currently i
have some small functionality like bus reset, sync word setup etc associated
with the adapter object, but can be extended for others as well.

Another advantage of this method is that it makes the integration of hybrid
devices as well into the existing framework without having workarounds.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.linuxtv.org/pipermail/linux-dvb/attachments/20070115/11bd435f/attachment.htm

More information about the linux-dvb mailing list