Re: ANNOUNCE: ivtv alpha release

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



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/        |
\--------------------------------------------------------------------/





[Index of Archives]     [Linux DVB]     [Video Disk Recorder]     [Asterisk]     [Photo]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Free Photo Albums]     [Fedora Users]     [Fedora Women]     [ALSA Users]     [ALSA Devel]     [Linux USB]

Powered by Linux