Linux Camera Driver Development (V4L2)
Write V4L2 camera drivers end to end: sensors over I2C, buffers, DMA-BUF, media controller, ISP and image-quality tuning.
Advanced40 lessons
written lessons≈ 20 h
Embedded Linux & Multimedia · 40 illustrated lessons (text/HTML)
Outcomes
- Write a V4L2 sensor driver with controls, formats and streaming
- Manage capture buffers with DMA-BUF and the media controller
- Tune image quality (AWB, AE, colour, HDR) and test camera stability
Where we teach this
- VIS-110 · V4L2 Driver Development live cohort
The lessons
Every lesson in this curriculum, in the order we teach it.
- 1Linux camera driver development in practice
- 2Kernel module basics
- 3Character-device driver basics
- 4The V4L2 core framework explained
- 5Camera hardware interfaces
- 6I2C subsystem driver
- 7Camera sensor drivers
- 8The V4L2 control interface
- 9Video buffer management
- 10DMA buffer allocation
- 11Image format handling
- 12Video stream operations
- 13Interrupt handling
- 14Clock and power management
- 15Device-tree configuration
- 16Introduction
- 17User-space tools
- 18Multi-camera support
- 19Image quality tuning: white balance, auto exposure and colour correction
- 20ISP integration: image signal processing, 3A algorithms and post-processing
- 21The DMA-BUF framework: buffer sharing, export/import and sync objects
- 22The Media Controller framework explained
- 23V4L2 asynchronous probing in practice
- 24Firmware loading
- 25Video capture in practice: grabbing and saving camera images
- 26Video preview in practice
- 27Control parameters in practice
- 28Format conversion in practice: YUV to RGB and image scaling
- 29Multi-plane support
- 30High frame-rate support: high-speed modes, bandwidth optimisation and timing control
- 31HDR support: multi-exposure fusion and tone mapping
- 32Autofocus driver
- 33Flash control
- 34Sensor calibration: lens shading and dead-pixel correction
- 35Thermal management
- 36Introduction
- 37Camera driver stability testing
- 38Compatibility testing overview
- 39Driver release
- 40Project overview
All-access library
Every curriculum on this page, with the labs and lab sequences, for a year.