diff options
author | 2015-08-04 12:17:53 -0700 | |
---|---|---|
committer | 2015-08-04 15:44:42 -0700 | |
commit | 9ca8dbcc65cfc63d6f5ef3312a33184e1d726e00 (patch) | |
tree | 1c9cafbcd35f783a87880a10f85d1a060db1a563 /kernel/Documentation/DocBook/media/v4l/vidioc-g-enc-index.xml | |
parent | 98260f3884f4a202f9ca5eabed40b1354c489b29 (diff) |
Add the rt linux 4.1.3-rt3 as base
Import the rt linux 4.1.3-rt3 as OPNFV kvm base.
It's from git://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git linux-4.1.y-rt and
the base is:
commit 0917f823c59692d751951bf5ea699a2d1e2f26a2
Author: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Date: Sat Jul 25 12:13:34 2015 +0200
Prepare v4.1.3-rt3
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
We lose all the git history this way and it's not good. We
should apply another opnfv project repo in future.
Change-Id: I87543d81c9df70d99c5001fbdf646b202c19f423
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
Diffstat (limited to 'kernel/Documentation/DocBook/media/v4l/vidioc-g-enc-index.xml')
-rw-r--r-- | kernel/Documentation/DocBook/media/v4l/vidioc-g-enc-index.xml | 189 |
1 files changed, 189 insertions, 0 deletions
diff --git a/kernel/Documentation/DocBook/media/v4l/vidioc-g-enc-index.xml b/kernel/Documentation/DocBook/media/v4l/vidioc-g-enc-index.xml new file mode 100644 index 000000000..be25029a1 --- /dev/null +++ b/kernel/Documentation/DocBook/media/v4l/vidioc-g-enc-index.xml @@ -0,0 +1,189 @@ +<refentry id="vidioc-g-enc-index"> + <refmeta> + <refentrytitle>ioctl VIDIOC_G_ENC_INDEX</refentrytitle> + &manvol; + </refmeta> + + <refnamediv> + <refname>VIDIOC_G_ENC_INDEX</refname> + <refpurpose>Get meta data about a compressed video stream</refpurpose> + </refnamediv> + + <refsynopsisdiv> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>ioctl</function></funcdef> + <paramdef>int <parameter>fd</parameter></paramdef> + <paramdef>int <parameter>request</parameter></paramdef> + <paramdef>struct v4l2_enc_idx *<parameter>argp</parameter></paramdef> + </funcprototype> + </funcsynopsis> + </refsynopsisdiv> + + <refsect1> + <title>Arguments</title> + + <variablelist> + <varlistentry> + <term><parameter>fd</parameter></term> + <listitem> + <para>&fd;</para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>request</parameter></term> + <listitem> + <para>VIDIOC_G_ENC_INDEX</para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>argp</parameter></term> + <listitem> + <para></para> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + + <refsect1> + <title>Description</title> + + <para>The <constant>VIDIOC_G_ENC_INDEX</constant> ioctl provides +meta data about a compressed video stream the same or another +application currently reads from the driver, which is useful for +random access into the stream without decoding it.</para> + + <para>To read the data applications must call +<constant>VIDIOC_G_ENC_INDEX</constant> with a pointer to a +&v4l2-enc-idx;. On success the driver fills the +<structfield>entry</structfield> array, stores the number of elements +written in the <structfield>entries</structfield> field, and +initializes the <structfield>entries_cap</structfield> field.</para> + + <para>Each element of the <structfield>entry</structfield> array +contains meta data about one picture. A +<constant>VIDIOC_G_ENC_INDEX</constant> call reads up to +<constant>V4L2_ENC_IDX_ENTRIES</constant> entries from a driver +buffer, which can hold up to <structfield>entries_cap</structfield> +entries. This number can be lower or higher than +<constant>V4L2_ENC_IDX_ENTRIES</constant>, but not zero. When the +application fails to read the meta data in time the oldest entries +will be lost. When the buffer is empty or no capturing/encoding is in +progress, <structfield>entries</structfield> will be zero.</para> + + <para>Currently this ioctl is only defined for MPEG-2 program +streams and video elementary streams.</para> + + <table pgwide="1" frame="none" id="v4l2-enc-idx"> + <title>struct <structname>v4l2_enc_idx</structname></title> + <tgroup cols="3"> + &cs-str; + <tbody valign="top"> + <row> + <entry>__u32</entry> + <entry><structfield>entries</structfield></entry> + <entry>The number of entries the driver stored in the +<structfield>entry</structfield> array.</entry> + </row> + <row> + <entry>__u32</entry> + <entry><structfield>entries_cap</structfield></entry> + <entry>The number of entries the driver can +buffer. Must be greater than zero.</entry> + </row> + <row> + <entry>__u32</entry> + <entry><structfield>reserved</structfield>[4]</entry> + <entry spanname="hspan">Reserved for future extensions. +Drivers must set the array to zero.</entry> + </row> + <row> + <entry>&v4l2-enc-idx-entry;</entry> + <entry><structfield>entry</structfield>[<constant>V4L2_ENC_IDX_ENTRIES</constant>]</entry> + <entry>Meta data about a compressed video stream. Each +element of the array corresponds to one picture, sorted in ascending +order by their <structfield>offset</structfield>.</entry> + </row> + </tbody> + </tgroup> + </table> + + <table pgwide="1" frame="none" id="v4l2-enc-idx-entry"> + <title>struct <structname>v4l2_enc_idx_entry</structname></title> + <tgroup cols="3"> + &cs-str; + <tbody valign="top"> + <row> + <entry>__u64</entry> + <entry><structfield>offset</structfield></entry> + <entry>The offset in bytes from the beginning of the +compressed video stream to the beginning of this picture, that is a +<wordasword>PES packet header</wordasword> as defined in <xref + linkend="mpeg2part1" /> or a <wordasword>picture +header</wordasword> as defined in <xref linkend="mpeg2part2" />. When +the encoder is stopped, the driver resets the offset to zero.</entry> + </row> + <row> + <entry>__u64</entry> + <entry><structfield>pts</structfield></entry> + <entry>The 33 bit <wordasword>Presentation Time +Stamp</wordasword> of this picture as defined in <xref + linkend="mpeg2part1" />.</entry> + </row> + <row> + <entry>__u32</entry> + <entry><structfield>length</structfield></entry> + <entry>The length of this picture in bytes.</entry> + </row> + <row> + <entry>__u32</entry> + <entry><structfield>flags</structfield></entry> + <entry>Flags containing the coding type of this picture, see <xref + linkend="enc-idx-flags" />.</entry> + </row> + <row> + <entry>__u32</entry> + <entry><structfield>reserved</structfield>[2]</entry> + <entry>Reserved for future extensions. +Drivers must set the array to zero.</entry> + </row> + </tbody> + </tgroup> + </table> + + <table pgwide="1" frame="none" id="enc-idx-flags"> + <title>Index Entry Flags</title> + <tgroup cols="3"> + &cs-def; + <tbody valign="top"> + <row> + <entry><constant>V4L2_ENC_IDX_FRAME_I</constant></entry> + <entry>0x00</entry> + <entry>This is an Intra-coded picture.</entry> + </row> + <row> + <entry><constant>V4L2_ENC_IDX_FRAME_P</constant></entry> + <entry>0x01</entry> + <entry>This is a Predictive-coded picture.</entry> + </row> + <row> + <entry><constant>V4L2_ENC_IDX_FRAME_B</constant></entry> + <entry>0x02</entry> + <entry>This is a Bidirectionally predictive-coded +picture.</entry> + </row> + <row> + <entry><constant>V4L2_ENC_IDX_FRAME_MASK</constant></entry> + <entry>0x0F</entry> + <entry><wordasword>AND</wordasword> the flags field with +this mask to obtain the picture coding type.</entry> + </row> + </tbody> + </tgroup> + </table> + </refsect1> + + <refsect1> + &return-value; + </refsect1> +</refentry> |