Commit e452134c authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

[media] libv4l-introduction.rst: improve crossr-references

Use C cross-references to mention the V4L2 API calls on all
places it occurs inside this file.

While here, also mark constants as such.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent 9281f251
...@@ -113,43 +113,47 @@ Libv4l device control functions ...@@ -113,43 +113,47 @@ Libv4l device control functions
The common file operation methods are provided by libv4l. The common file operation methods are provided by libv4l.
Those functions operate just like glibc Those functions operate just like the gcc function ``dup()`` and
open/close/dup/ioctl/read/mmap/munmap: V4L2 functions
:c:func:`open() <v4l2-open>`, :c:func:`close() <v4l2-close>`,
:c:func:`ioctl() <v4l2-ioctl>`, :c:func:`read() <v4l2-read>`,
:c:func:`mmap() <v4l2-mmap>` and :c:func:`munmap() <v4l2-munmap>`:
.. c:function:: int v4l2_open(const char *file, int oflag, ...) .. c:function:: int v4l2_open(const char *file, int oflag, ...)
operates like the standard :ref:`open() <func-open>` function. operates like the :c:func:`open() <v4l2-open>` function.
.. c:function:: int v4l2_close(int fd) .. c:function:: int v4l2_close(int fd)
operates like the standard :ref:`close() <func-close>` function. operates like the :c:func:`close() <v4l2-close>` function.
.. c:function:: int v4l2_dup(int fd) .. c:function:: int v4l2_dup(int fd)
operates like the standard dup() function, duplicating a file handler. operates like the libc ``dup()`` function, duplicating a file handler.
.. c:function:: int v4l2_ioctl (int fd, unsigned long int request, ...) .. c:function:: int v4l2_ioctl (int fd, unsigned long int request, ...)
operates like the standard :ref:`ioctl() <func-ioctl>` function. operates like the :c:func:`ioctl() <v4l2-ioctl>` function.
.. c:function:: int v4l2_read (int fd, void* buffer, size_t n) .. c:function:: int v4l2_read (int fd, void* buffer, size_t n)
operates like the standard :ref:`read() <func-read>` function. operates like the :c:func:`read() <v4l2-read>` function.
.. c:function:: void v4l2_mmap(void *start, size_t length, int prot, int flags, int fd, int64_t offset); .. c:function:: void v4l2_mmap(void *start, size_t length, int prot, int flags, int fd, int64_t offset);
operates like the standard :ref:`mmap() <func-mmap>` function. operates like the :c:func:`munmap() <v4l2-munmap>` function.
.. c:function:: int v4l2_munmap(void *_start, size_t length); .. c:function:: int v4l2_munmap(void *_start, size_t length);
operates like the standard :ref:`munmap() <func-munmap>` function.
operates like the :c:func:`munmap() <v4l2-munmap>` function.
Those functions provide additional control: Those functions provide additional control:
.. c:function:: int v4l2_fd_open(int fd, int v4l2_flags) .. c:function:: int v4l2_fd_open(int fd, int v4l2_flags)
opens an already opened fd for further use through v4l2lib and possibly opens an already opened fd for further use through v4l2lib and possibly
modify libv4l2's default behavior through the v4l2_flags argument. modify libv4l2's default behavior through the ``v4l2_flags`` argument.
Currently, v4l2_flags can be ``V4L2_DISABLE_CONVERSION``, to disable Currently, ``v4l2_flags`` can be ``V4L2_DISABLE_CONVERSION``, to disable
format conversion. format conversion.
.. c:function:: int v4l2_set_control(int fd, int cid, int value) .. c:function:: int v4l2_set_control(int fd, int cid, int value)
...@@ -168,9 +172,12 @@ Those functions provide additional control: ...@@ -168,9 +172,12 @@ Those functions provide additional control:
v4l1compat.so wrapper library v4l1compat.so wrapper library
============================= =============================
This library intercepts calls to open/close/ioctl/mmap/mmunmap This library intercepts calls to
:c:func:`open() <v4l2-open>`, :c:func:`close() <v4l2-close>`,
:c:func:`ioctl() <v4l2-ioctl>`, :c:func:`mmap() <v4l2-mmap>` and
:c:func:`munmap() <v4l2-munmap>`
operations and redirects them to the libv4l counterparts, by using operations and redirects them to the libv4l counterparts, by using
LD_PRELOAD=/usr/lib/v4l1compat.so. It also emulates V4L1 calls via V4L2 ``LD_PRELOAD=/usr/lib/v4l1compat.so``. It also emulates V4L1 calls via V4L2
API. API.
It allows usage of binary legacy applications that still don't use It allows usage of binary legacy applications that still don't use
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment