Linux Media Kernel Documentation
Linux Media Infrastructure API (V4L2, DVB and Remote Controllers)
1) Since Sept, 15 2009, V4L and DVB API's got integrated into a compendium that presents both API's, plus the IR input event mapping.
2) Although it is possible to generate a PDF version of the specs, the generated PDF is not very useful, since some tables and pictures are larger than the output page. So the better is to use the browable documentation.
Media Kernel developers Documentation
NOTE: Please notice that this is a work in progress. There are still several things not properly documented. Feel free to contribute on enhancing this documentation.
Linux DVB libdvbv5 DocumentationThe libdvbv5 API documentation, available since Sept, 2014, documents the libdvbv5 userspace library. It is also available in pdf format.
A small collection of READMEs and FAQs is included in the Linux kernel source tree in linux/Documentation/dvb/ ( browse docs in the git repository).
A small collection of READMEs and FAQs is included in the Linux kernel source tree in linux/Documentation/video4linux/ ( browse docs in the git repository).
The pre-merge V4L and DVB API specs are still available as separate documents. However, they are outdated and are kept here just as historic reference.
Legacy DVB documents
You can find the original PDF version of the Linux DVB API version 3 in the download area.
Legacy Video4Linux documents
A browsable online version of Video4Linux2 API updated up to pre-kernel 2.6.32 is at here.
There's a V4L Drivers guide at here.
Video4Linux API version 1 is obsolete. Driver and application developers are requested to migrate their work to V4L2 API.
There's an effort in course to fully remove its support from the drivers and the compatibility kernel driver mode, targeted to kernels 2.6.36/2.6.37.
Compatibility with V4L1 applications, including binary-only applications will be provided by v4l-utils libv4l.