aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/DocBook
diff options
context:
space:
mode:
authorSylwester Nawrocki <s.nawrocki@samsung.com>2012-10-03 06:44:53 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-10-05 20:28:03 -0400
commitc3010097a79fc741d27b07e068598fd9468ca41f (patch)
treee31e64e2e36fc44b78c6910a48664378702ff27b /Documentation/DocBook
parentd2642485d694027ad8c918844cee0e547cc11bcb (diff)
[media] V4L: Add V4L2_PIX_FMT_S5C_UYVY_JPG fourcc definition
This patch adds definition of the Samsung S5C73M3 camera specific image format. V4L2_PIX_FMT_S5C_UYVY_JPG is a two-planar format, the first plane contains interleaved UYVY and JPEG data followed by meta-data. The second plane contains additional meta-data needed for extracting JPEG and UYVY data stream from the first plane. Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'Documentation/DocBook')
-rw-r--r--Documentation/DocBook/media/v4l/pixfmt.xml28
1 files changed, 28 insertions, 0 deletions
diff --git a/Documentation/DocBook/media/v4l/pixfmt.xml b/Documentation/DocBook/media/v4l/pixfmt.xml
index 1ddbfabe3195..fce143726fd5 100644
--- a/Documentation/DocBook/media/v4l/pixfmt.xml
+++ b/Documentation/DocBook/media/v4l/pixfmt.xml
@@ -996,6 +996,34 @@ the other bits are set to 0.</entry>
996 <entry>Old 6-bit greyscale format. Only the most significant 6 bits of each byte are used, 996 <entry>Old 6-bit greyscale format. Only the most significant 6 bits of each byte are used,
997the other bits are set to 0.</entry> 997the other bits are set to 0.</entry>
998 </row> 998 </row>
999 <row id="V4L2-PIX-FMT-S5C-UYVY-JPG">
1000 <entry><constant>V4L2_PIX_FMT_S5C_UYVY_JPG</constant></entry>
1001 <entry>'S5CI'</entry>
1002 <entry>Two-planar format used by Samsung S5C73MX cameras. The
1003first plane contains interleaved JPEG and UYVY image data, followed by meta data
1004in form of an array of offsets to the UYVY data blocks. The actual pointer array
1005follows immediately the interleaved JPEG/UYVY data, the number of entries in
1006this array equals the height of the UYVY image. Each entry is a 4-byte unsigned
1007integer in big endian order and it's an offset to a single pixel line of the
1008UYVY image. The first plane can start either with JPEG or UYVY data chunk. The
1009size of a single UYVY block equals the UYVY image's width multiplied by 2. The
1010size of a JPEG chunk depends on the image and can vary with each line.
1011<para>The second plane, at an offset of 4084 bytes, contains a 4-byte offset to
1012the pointer array in the first plane. This offset is followed by a 4-byte value
1013indicating size of the pointer array. All numbers in the second plane are also
1014in big endian order. Remaining data in the second plane is undefined. The
1015information in the second plane allows to easily find location of the pointer
1016array, which can be different for each frame. The size of the pointer array is
1017constant for given UYVY image height.</para>
1018<para>In order to extract UYVY and JPEG frames an application can initially set
1019a data pointer to the start of first plane and then add an offset from the first
1020entry of the pointers table. Such a pointer indicates start of an UYVY image
1021pixel line. Whole UYVY line can be copied to a separate buffer. These steps
1022should be repeated for each line, i.e. the number of entries in the pointer
1023array. Anything what's in between the UYVY lines is JPEG data and should be
1024concatenated to form the JPEG stream. </para>
1025</entry>
1026 </row>
999 </tbody> 1027 </tbody>
1000 </tgroup> 1028 </tgroup>
1001 </table> 1029 </table>