Multiproto is a proposal for version 3.3 of the linux DVB API which includes extensions for cards which support multiple DVB protocols (DVB-S, DVB-S2, DVB-T, DVB-C, DVB-H, ATSC, DSS).
It is an experimental project and is not currently implemented in any released version of Linux. No firm plan has been made for its inclusion in Linux.
Discuss the features and facets of the project here ... this means you
explain the choices made ... this means you
give a technical description of how the API change has been implemented ... this means you
New structs and #defines have been added to expand the API for multiple frontends and the new capabilities of DVB-S2. These are prefixed (at least for now) with "dvbfe_" and "DVBFE_" as opposed to the old "fe_" and "FE_". For details compare the old and new versions of include/linux/dvb/frontend.h. Currently multiproto implements both the new and old APIs and a glue layer to manage old/new drivers with new/old API calls. Presumably the plan is eventually to move to a pure 3.3 API and update all the drivers.
Evaluation and Alternatives
explain whether the design goals have been met or not ... this means you
Status and Migration Plan
explain how a migration from the current API to multiproto could be achieved ... this means you
No clear migration plan has yet been agreed.
Making it Work
How to get it:
hg clone http://jusst.de/hg/multiproto
There are currently no in-kernel multiproto drivers. There are several cards which have experimental support in the multiproto tree, perhaps with additional patches.
Provide details of which drivers work with multiproto ... this means you
See the descriptions for the following cards:
provide the details of where the drivers and patches and necessary tools are available ... this means you
provide details of how to compile for recent kernels -- this means you
Sample kernel output
provide the relevant portion of dmesg here
Tuner / DiSEqC / Player support
provide comprehensive details of how to upgrade multimedia applications to work with the new API ... this means you
Scanning and tuning applications generally will not work with the new API unless they are modified. The situation is arguably improving but the lack of patched applications (and guidance on patching) has hindered completion and testing of multiproto and new drivers, and adoption of the new API. There is still no patched dvb-apps tree.
scan: see patched version at http://jusst.de/manu/scan.tar.bz2
szap: see patched version at http://abraham.manu.googlepages.com/szap.c Also see information about szap2 at http://allrussian.info/thread.php?postid=187408#post187408 and http://www.linuxtv.org/pipermail/linux-dvb/2008-February/023836.html.
mplayer : someone needs to write a patch ... why don't you?
Kaffeine : someone needs to write a patch ... why don't you?
VDR: VDR version 1.5.14 and later require multiproto (v1.5.14 announcement: http://www.linuxtv.org/pipermail/vdr/2008-January/015302.html
MythTV: Two patches (one DVB-S/S2, one DVB-S only) have been posted http://www.linuxtv.org/pipermail/linux-dvb/2008-January/022757.html. Current status?
dvbstream: Someone needs to write a patch ... why don't you? See http://www.linuxtv.org/pipermail/linux-dvb/2008-February/024056.html.
provide details of how to use with DiSEqC -- this means you