mirror of
https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
synced 2025-09-07 16:58:04 -04:00
Fixed MTP to work with TWRP
This commit is contained in:
commit
f6dfaef42e
50820 changed files with 20846062 additions and 0 deletions
66
Documentation/DocBook/media/v4l/pixfmt-nv12mt.xml
Normal file
66
Documentation/DocBook/media/v4l/pixfmt-nv12mt.xml
Normal file
|
@ -0,0 +1,66 @@
|
|||
<refentry>
|
||||
<refmeta>
|
||||
<refentrytitle>V4L2_PIX_FMT_NV12MT ('TM12')</refentrytitle>
|
||||
&manvol;
|
||||
</refmeta>
|
||||
<refnamediv>
|
||||
<refname id="V4L2-PIX-FMT-NV12MT"><constant>V4L2_PIX_FMT_NV12MT
|
||||
</constant></refname>
|
||||
<refpurpose>Formats with ½ horizontal and vertical
|
||||
chroma resolution. This format has two planes - one for luminance and one for
|
||||
chrominance. Chroma samples are interleaved. The difference to
|
||||
<constant>V4L2_PIX_FMT_NV12</constant> is the memory layout. Pixels are
|
||||
grouped in macroblocks of 64x32 size. The order of macroblocks in memory is
|
||||
also not standard.
|
||||
</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>This is the two-plane versions of the YUV 4:2:0 format where data
|
||||
is grouped into 64x32 macroblocks. The three components are separated into two
|
||||
sub-images or planes. The Y plane has one byte per pixel and pixels are grouped
|
||||
into 64x32 macroblocks. The CbCr plane has the same width, in bytes, as the Y
|
||||
plane (and the image), but is half as tall in pixels. The chroma plane is also
|
||||
grouped into 64x32 macroblocks.</para>
|
||||
<para>Width of the buffer has to be aligned to the multiple of 128, and
|
||||
height alignment is 32. Every four adjacent buffers - two horizontally and two
|
||||
vertically are grouped together and are located in memory in Z or flipped Z
|
||||
order. </para>
|
||||
<para>Layout of macroblocks in memory is presented in the following
|
||||
figure.</para>
|
||||
<para><figure id="nv12mt">
|
||||
<title><constant>V4L2_PIX_FMT_NV12MT</constant> macroblock Z shape
|
||||
memory layout</title>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="nv12mt.gif" format="GIF" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
The requirement that width is multiple of 128 is implemented because,
|
||||
the Z shape cannot be cut in half horizontally. In case the vertical resolution
|
||||
of macroblocks is odd then the last row of macroblocks is arranged in a linear
|
||||
order. </para>
|
||||
<para>In case of chroma the layout is identical. Cb and Cr samples are
|
||||
interleaved. Height of the buffer is aligned to 32.
|
||||
</para>
|
||||
<example>
|
||||
<title>Memory layout of macroblocks in <constant>V4L2_PIX_FMT_NV12
|
||||
</constant> format pixel image - extreme case</title>
|
||||
<para>
|
||||
<figure id="nv12mt_ex">
|
||||
<title>Example <constant>V4L2_PIX_FMT_NV12MT</constant> memory
|
||||
layout of macroblocks</title>
|
||||
<mediaobject>
|
||||
<imageobject>
|
||||
<imagedata fileref="nv12mt_example.gif" format="GIF" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
</figure>
|
||||
Memory layout of macroblocks of <constant>V4L2_PIX_FMT_NV12MT
|
||||
</constant> format in most extreme case.
|
||||
</para>
|
||||
</example>
|
||||
</refsect1>
|
||||
</refentry>
|
Loading…
Add table
Add a link
Reference in a new issue