LWN: Comments on "The Video4Linux2 API: an introduction"
http://lwn.net/Articles/203924/
This is a special feed containing comments posted
to the individual LWN article titled "The Video4Linux2 API: an introduction".
hourly2The Video4Linux2 API: an introduction
http://lwn.net/Articles/226271/rss
2007-03-15T16:12:01+00:00andre.goddard
Looking forward for the next installment.<br>
Thanks for the great article!<br>
The Video4Linux2 API: an introduction - complimentary information
http://lwn.net/Articles/219213/rss
2007-01-26T13:12:54+00:00mrechberger
what I noticed is that the userspace raw vbi decoder (libzvbi) is very <br>
poor. Windows also uses raw vbi with USB devices and it works way more <br>
accurate than in Linux with even 2x oversampling. If possible try to use <br>
something else.<br>
<p>
It was fun implementing support for raw vbi but as a fact there's almost <br>
no practical use for it at the moment.<br>
The Video4Linux2 API: an introduction - complimentary information
http://lwn.net/Articles/205310/rss
2006-10-20T12:55:38+00:00mchehab
<ul><font class="QuotedText">> There are also the "teletext" and "radio data system" interfaces currently implemented in the older V4L1 API; those have not been moved to V4L2 and there do not appear to be any immediate plans to do so.</font></ul>
<p>In fact, VBI interface handles both Closed Captions and Teletext. So, there's no need to have a separated teletext support.</p><p>At the raw VBI, the decoding proccess of Teletext is handled by userspace, while, with sliced VBI, this work is done by the hardware.</p>
<p>For Radio Data System, V4L2 uses a different approach, by using some special ioctls to haldle it, defined on include/media/rds.h.</p>
The Video4Linux2 API: an introduction
http://lwn.net/Articles/204039/rss
2006-10-12T11:25:55+00:00hverkuil
Some background info:<br>
<p>
As maintainer of ivtv I am working for over a year now to get it included <br>
into the kernel. This turns out to be a huge job since in many ways this <br>
driver is a first-of-its-kind driver.<br>
<p>
Part of this effort is replacing ivtv-specific ioctls by a properly <br>
designed V4L2 API: 2.6.14 added the sliced VBI API and 2.6.18 added the <br>
API for encoding MPEG. The latter is not yet fully documented in the V4L2 <br>
spec (I'm working on that). Still to do is designing an MPEG decoding API <br>
and (possibly, might remain ivtv-specific) an API for the On-Screen <br>
Display. Designing such APIs is a time consuming process since MPEG <br>
encoders/decoders are quite complicated.<br>
<p>
I've no experience with converting V4L1 API to V4L2 API though since ivtv <br>
always supported V4L2 AFAIK.<br>
The VIVI driver; a great starting point for V4L2 driver writers
http://lwn.net/Articles/203971/rss
2006-10-12T04:18:34+00:00roskegg
Video Technology Magazine (<a href="http://www.videotechnology.com/">http://www.videotechnology.com/</a>) noticed the lack of good documentation for writing V4L2 drivers a year ago. Videotechnology Magazine staff John Sokol (Editor) and Ted Walther began coding the Virtual Video driver project. Part way through they handed the work over to Mauro Carvhalo Chehab for completion. It was finished just before Debconf6.<br>
<p>
The "vivi" driver which appeared in the 2.6.17 kernel is the outcome of that work. vivi is an abbreviation of "Virtual Video". The vivi driver creates a virtual video input device that produces real video.<br>
<p>
The goal of the vivi project was to do a bare minimum "stub" V4L2 driver that would produce video output playable with xawtv. The project was an astounding success. vivi outputs a changing timestamp overlaid on some vertical color bars. vivi is simple. You can use it as a starting point for any video driver you wish to write.<br>
<p>
The vivi code uses the most approved, idiomatic, current set of best practices for coding V4L2 drivers in the Linux kernel. If you use vivi as a starting point for your new V4L2 drivers, they will be less likely to break in the future than if you use any other driver as a starting point. You do not need to wonder if any of the code was written the way it was to work around some hardware specific bug. Being a virtual device, you know it wasn't.<br>
<p>
Videotechnology Magazine sponsored a backport of vivi and the current V4L2 core to the 2.4 series of kernels. Whether you want a development or a tried and true kernel, you can benefit from vivi and the latest improvements in V4L2 because of this work.<br>
The Video4Linux2 API: an introduction
http://lwn.net/Articles/203958/rss
2006-10-12T02:15:31+00:00patrickbakker
<p>
I have read that the IVTV driver (for the Hauppage TV tuner cards amoung others) is moving away from its unique ioctls to more standard V4L2 ioctls. The primary agent of change is Hans Verkuil and I think he is working on fleshing out some of the V4L2 APIs to handle things like MPEG-II since the IVTV driver can capture video as a MPEG-II stream.
</p>
<p>
It may be useful to talk to Hans Verkuil for practical feedback on converting to V4L2 and for other portions of the V4L2 API like the MPEG-II stuff I already mentioned.
</p>
<a href="http://ivtvdriver.org/index.php/Main_Page">IVTV Driver</a>