Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Re: V4L issues with linux dvb driver
Hello Billy,
I'll have a look at this later today and test the "dvb-kernel" driver
with "tvtime" and come back to you later.
Ok, I see that "tvterm" uses plain v4l, so it should work through the
compatibility layer.
Unfortunately, the driver does not support the
"old-style-mmap()-interface" through the compatiblity layer. 8-(
"Old style" means, that all capture buffers are mmap()ed in a single
call, the buffers are separated by offsets. Using v4l2, you mmap() every
single buffer individually. For the compatibility layer to work, you
need some extra hooks, that are not present in the current driver.
This is the reason, why "tvtime" only gets one capture buffer and that's
why the performance sucks.
Two solutions:
1) Add these extra hooks to the driver, so the compatiblity layer is
satisfied.
I don't like this solution, because there are many more problems
regarding the interaction between saa7146 and v4l. One example: your
driver expects hue/brightness/colour/contrast, while the saa7146
delivers brightness/constrast/saturation only...
2) Switch to v4l2. Drivers are available for all common chipsets (bt8x8,
saa7134, saa7146), they will be part of the 2.6.x kernel by default.
To support this, I made a quick-and-dirty hack porting "tvtime" to v4l2.
I fixed most stuff to PAL and threw out everything that's not needed.
Some quirks were necessary to squeeze the v4l1 capture scheme to the way
v4l2 works. The subsystem should be redesigned though.
I attached a diff to the current CVS to this mail. You need to put
"videodev2.h" for example to /usr/include/linux.
CU
Michael.
Attachment:
tvtime_v4l2.diff.gz
Description: GNU Zip compressed data
Home |
Main Index |
Thread Index