Video For Linux Two is the second version of the Video For Linux API, a kernel interface for analog radio and video capture and output drivers.

Early drivers used ad-hoc interfaces. These were replaced in Linux 2.2 by Alan Cox' V4L API, based on the interface of the bttv driver. In 1999 Bill Dirks started the development of V4L2 to fix some shortcomings of V4L and to support a wider range of devices. The API was revised again in 2002 prior to its inclusion in Linux 2.5/2.6, and work continues on improvements and additions while maintaining compatibility with existing drivers and applications. In 2006/2007 efforts began on FreeBSD drivers with a V4L2 interface.

This book documents the V4L2 API. Intended audience are driver and application writers.

If you have questions or ideas regarding the API, please write to the linux-media mailing list:

The latest version of this document and the DocBook SGML sources are part of the repository. The online version is available here: