Em Ter, 2007-05-29 às 21:04 +0200, Thierry Merle escreveu: > > Mauro Carvalho Chehab a écrit : > > > > > >>> Hi Mauro and Markus, > >>> Just to summ up what I understood we need: > >>> > >>> What do we need in userspace, only for v4l (dvb is not concerned): > >>> - colorspace translations > >>> - filters that be done in hardware if the selected hardware can, > >>> otherwise software plugin > >>> - decompression algorithm like stk11xx or usbvision (the decompression > >>> algorithm is in kernelspace since it is of linear complexity but shall > >>> be moved to userspace) > >>> > > > > Yes. The first focus, IMO, should be the last one. > > > > > > OK, so we must open the V4L2 API to add a custom pixel format. I don't think we need to change the API. The API already exports the format, as a fourcc-like info. We just need to add newer codes as they'll be added into kernel.
> While brainstorming, I thought it would be funny to create userspace > drivers like FUSE based projects do. > Applications would see nothing but a new device driver to access, all > decompression algorithm would be in userspace. > The path from the application to the v4l2 kernel driver: > [Application]<->[/mnt/video0 (created by FUSE-like userspace > lib)]<->[/dev/video0 (created by kernel v4l2 driver)] > There are limitations that I don't know, but this would be transparent > for the applications. This seems to be an interesting approach. > > Yes, it is possible. In fact, some devices currently work by generating > > a common audio and video stream. The driver may just send the packet > > as-is, leaving to the userspace API the function to de-merge and > > synchronize audio and video. > > > So we have a userspace lib that will demux/uncompress device driver output. > This lib will know each device driver particularities to know how to > demux/uncompress in a a/v format that will be understood by the application. Yes. However, we should try to do loose coupling whenever possible, to keep maintainership of the "library"(*) as simple as possible. (*) With this approach, it seems that it will turn into a helper daemon, instead of just a library. Cheers, Mauro - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/