Re: ANNOUNCE: ivtv alpha release

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



Marcus Metzler wrote:


Not if the demux is in hardware. As I said the DVB API makes more
sense for the decoder part of the pvr 350. Although you need more for
encoding than supporting open and read. If your encoder card has the
ability to provide more than one cmpressed format and bitrate (and
whatever other parameters you have to set for MPEG encoding) you need
an API (i.e. some ioctls) that let you control these features, in my opinion
user space I2C is not suitable for that because that would limit you to one particular hardware and would limit the user to root or give to
much ability to mess up the system.

Yes this true, there should actually be an V4L2 extension for MPEG encoding. For me the I2C user space solution is perfect, as I can also use my userspace program to control standalone SAA6752 application boards. But, this is indeed not suitable for regular users.

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). And at the time I added the SAA6752 support to the SAA7134 driver, such a board was (as far as I know) not available outside of Philips and I was the only one running it under Linux, so it did not make much sense for me to add this.

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?

 Gert







[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