Gert Vervoort writes: > I considered adding a V4L2 MPEG encoder extension, but I did not find > the time to do it. And making a good generic API for MPEG encoders is > quite difficult, although most encoder have a lot of settings in common > (features which can be found in MPEG standard), there also important > settings which are quite different between encoder implementations (e.g. > variable bitrate control settings). That's true. We had the same problem with the kfir card which still has no API for the settings. We did tried to motivate people on the mpeg mailing list at linuxtv.org (http://www.linuxtv.org/mailinglists/mpeg2/) to give some suggestions since we are not experts concerning the variuos MPEG settings and did have other things to work on, but it never came to actually defining an API. So if this is going to be done for V4L2, maybe we could start on this list. A good start for a parameter list would probably be the .par files for mpegenc. > Setting these kind of settings to the hardware, certainly belongs to > kernel space. > But to my opion, the compressed stream should be passed "as is" to user > space and then a user space program/library should demux/mux/convert > this stream to something which can be used be used by other programs > (e.g. cat /dev/video1 | ./convert_to_mpeg_ts | mpeg2dec -t 0x100). > It looks strange to me that a demux > (/usr/src/linux-2.5.x/drivers/media/dvb/dvb-core) was added to kernel > space for the DVB driver. What is the reason for doing this in the > kernel, instead of a user space solution? Various cards have hardware demuxes and there is a kernel internal demux that allows you to e.g. write network drivers that use the stream from the DVB cards and demux it to feed it to the IP stack. You could also imagine using the demux to directly pipe the incoming data to a separate MPEG decoder card. Furthermore, the software demux does not create a lot of overhead (not like decoding MPEG or converting yuv<->rgb) and keeps the API consistant for the applications. If you dont want to use it and the hardware allows it you can still get the complete TS and demux it in userspace. Marcus -- /--------------------------------------------------------------------\ | Dr. Marcus O.C. Metzler | | |--------------------------------|-----------------------------------| | mocm@xxxxxxxxxxxxxx | http://www.metzlerbros.de/ | \--------------------------------------------------------------------/