V4L had been introduced late into the 2.1.X development cycle of the Linux kernel. Retroactively being renamed to V4L1, it was dropped in kernel 2.6.38.4
V4L2 is the second version of V4L. Video4Linux2 fixed some design bugs and started appearing in the 2.5.x kernels. Video4Linux2 drivers include a compatibility mode for Video4Linux1 applications, though the support can be incomplete and it is recommended to use Video4Linux1 devices in V4L2 mode. The project DVB-Wiki is now hosted on LinuxTV web site.5
Some programs support V4L2 through the media resource locator v4l2://.
Video4Linux has a complex negotiation process, which caused not all applications having support for all cameras.8
"An Introduction to the Video4Linux Framework: How to write a video capture driver". 2014-02-02. Retrieved 2014-02-16. https://fosdem.org/2014/schedule/event/v4l_intro/ ↩
"Overview of the V4L2 driver framework". Archived from the original on 2014-02-21. Retrieved 2013-12-04. Overview of the V4L2 driver framework. https://web.archive.org/web/20140221165356/https://www.kernel.org/doc/Documentation/video4linux/v4l2-framework.txt ↩
"Path to a Standardized Video Codec API" (PDF). Archived from the original on 2014-01-06. https://web.archive.org/web/20140106032317/https://events.linuxfoundation.org/images/stories/pdf/lceu2012_debski.pdf ↩
"gspca - LinuxTVWiki". LinuxTV. Retrieved 2024-01-12. https://linuxtv.org/wiki/index.php/Gspca ↩
Schimek, Michael H. "Video for Linux Two API Specification". LinuxTV. Retrieved 2024-01-12. https://www.linuxtv.org/downloads/legacy/video4linux/API/V4L2_API/spec-single/v4l2.html ↩
"Open Broadcaster Software | OBS". obsproject.com. https://obsproject.com/ ↩
"Add video capture API proposal by 1bsyl". GitHub. https://github.com/libsdl-org/SDL/pull/5477 ↩
Corbet, Jonathan (2019-07-25). "Access to complex video devices with libcamera". LWN.net. Retrieved 2023-02-06. https://lwn.net/Articles/794555/ ↩