Mailing List archive

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

[linux-dvb] Re: V4L issues with linux dvb driver



Michael Hunold (hunold-ml@web.de):

> Unfortunately, the driver does not support the
> "old-style-mmap()-interface" through the compatiblity layer. 8-(
> 
> This is the reason, why "tvtime" only gets one capture buffer and
> that's why the performance sucks.

  Thanks for this analysis.  I'm updating our hardware support pages to
explain the situation.

> 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...

  Not exactly the end of the world, and bt878 already has this problem,
the chip supports separate saturation/hue but the API sucks.  We're
currently kinda holding off on our auto-calibration stuff until we go to
V4L2.

> 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.

  Thanks, I appreciate your interest.  We're definitely in a bad
situation with V4L2 right now, even more so that many V4L2 drivers are
in various stages of development when drivers exist for V4L1 that work.
However, you're not the first person to have been presented a bug or
problem in their V4L1 code and then be uninterested in fixing it, saying
that we should move to the V4L2 interface :)

  One annoyance for me right now is that while V4L2 supports ALTERNATE
mode, the bttv V4L2 driver currently fills both buffers at frame rate,
making this very important feature very useless.  Does your driver
support ALTERNATE mode?  Can I get woken up every field?  I don't like
the idea of moving to V4L2 when a major driver like this lies about
their support of ALTERNATE mode...

  Finally, it is essential to me that users be able to use the kernel
packages from their distribution and not compile their own.  So, this
means I must support V4L1.  Your patch is a nice start to V4L2 support,
but unfortunately the end result is going to look a little different as
I try to support both at once in a clean way.

  Comments?  I'd almost rather see some more effort put into the V4L1
compatibility code until 2.6 is released, although I understand that
even when 2.6 comes out, we'll still have to go through a phase of
supporting both APIs.

-- 
Billy Biggs
vektor@dumbterm.net


-- 
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index