.. _video_api:


Video
#####

The video driver API offers a generic interface to video devices.

Basic Operation
***************

Video Device
============

A video device is the abstraction of a hardware or software video function,
which can produce, process, consume or transform video data. The video API is
designed to offer flexible way to create, handle and combine various video
devices.

Endpoint
========

Each video device can have one or more endpoints. Output endpoints configure
video output function and generate data. Input endpoints configure video input
function and consume data.

Video Buffer
============

A video buffer provides the transport mechanism for the data. There is no
particular requirement on the content. The requirement for the content is
defined by the endpoint format. A video buffer can be queued to a device
endpoint for filling (input ep) or consuming (output ep) operation, once
the operation is achieved, buffer can be dequeued for post-processing,
release or reuse.

Controls
========

A video control is accessed and identified by a CID (control identifier). It
represents a video control property. Different devices will have different
controls available which can be generic, related to a device class or vendor
specific. The set/get control functions provide a generic scalable interface
to handle and create controls.

Configuration Options
*********************

Related configuration options:

* :kconfig:option:`CONFIG_VIDEO`

API Reference
*************

.. doxygengroup:: video_interface

.. doxygengroup:: video_controls
