Squashed backup commit (no shallow-clone history issues) of xiaomi-mt6833-dev/kernel_xiaomi_mt6833 (lineage-23.2 branch, upstream commit 9eece662e) plus all fixes applied to get everpal_defconfig building clean against a modern (GCC 15.2.0) toolchain -- see the previous commit message on the lineage-23.2 branch (also in this repo history is not available here since this is a squashed snapshot; full incremental history lives in the local DL380 checkout and the upstream GitHub remote). Upstream: https://github.com/xiaomi-mt6833-dev/kernel_xiaomi_mt6833 (lineage-23.2)
47 lines
886 B
ReStructuredText
47 lines
886 B
ReStructuredText
.. -*- coding: utf-8; mode: rst -*-
|
|
|
|
.. _common:
|
|
|
|
###################
|
|
Common API Elements
|
|
###################
|
|
Programming a V4L2 device consists of these steps:
|
|
|
|
- Opening the device
|
|
|
|
- Changing device properties, selecting a video and audio input, video
|
|
standard, picture brightness a. o.
|
|
|
|
- Negotiating a data format
|
|
|
|
- Negotiating an input/output method
|
|
|
|
- The actual input/output loop
|
|
|
|
- Closing the device
|
|
|
|
In practice most steps are optional and can be executed out of order. It
|
|
depends on the V4L2 device type, you can read about the details in
|
|
:ref:`devices`. In this chapter we will discuss the basic concepts
|
|
applicable to all devices.
|
|
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
|
|
open
|
|
querycap
|
|
app-pri
|
|
video
|
|
audio
|
|
tuner
|
|
standard
|
|
dv-timings
|
|
control
|
|
extended-controls
|
|
format
|
|
planar-apis
|
|
crop
|
|
selection-api
|
|
streaming-par
|