Hi, as announced earlier already I started with another API which is independent of any API core changes to support devices which use the dvb-core framework for digital TV and the analogue TV framework for analogue TV. The newer API consists of a kernelmodule and a usersland daemon which automatically loads the tuner modules which are implemented as shared libraries. The kernelmodule provides a node /dev/tuner where the usersland daemon attaches and receives its control commands from kernelspace. The mechanism behind that is similar to the udev mechanism. The userspace daemon runs select() on the interface and the kernelmodule wakes the daemon up if something is requested. The daemon receives control commands like loading a specific tuner module. As soon as such a call comes in the daemon looks at a list if the requested tuner driver is available and forks itself and registers (opens a new filehandle) the requested module at /dev/tuner. If the requested module is not found it submits that result back to kernelspace and attaching the requested tuner fails. Currently there's one module (xc3028) ported to userspace and tested with TV and DVB-T (radio is in progress). The kernelmodule is licensed under GPL, the userspace daemon including the userspace driver are dual licensed BSD/GPL since the usespace tuner module is intended to be reused with other operating systems. The current project site (which includes a link to the sources): http://mcentral.de/wiki/index.php/Userspace_tuner There's also a description how to use that API with existing devices, drivers need a very small modification to get them work with that API. Feel free to ask some questions about it and/or even to review the code and comment it. Markus _______________________________________________ linux-dvb mailing list linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb