2016-06-30 16:18:56 +03:00
|
|
|
.. -*- coding: utf-8; mode: rst -*-
|
|
|
|
|
|
|
|
.. _V4L2-PIX-FMT-Y12I:
|
|
|
|
|
|
|
|
**************************
|
|
|
|
V4L2_PIX_FMT_Y12I ('Y12I')
|
|
|
|
**************************
|
|
|
|
|
|
|
|
Interleaved grey-scale image, e.g. from a stereo-pair
|
|
|
|
|
|
|
|
|
|
|
|
Description
|
|
|
|
===========
|
|
|
|
|
|
|
|
This is a grey-scale image with a depth of 12 bits per pixel, but with
|
|
|
|
pixels from 2 sources interleaved and bit-packed. Each pixel is stored
|
|
|
|
in a 24-bit word in the little-endian order. On a little-endian machine
|
|
|
|
these pixels can be deinterlaced using
|
|
|
|
|
|
|
|
.. code-block:: c
|
|
|
|
|
|
|
|
__u8 *buf;
|
|
|
|
left0 = 0xfff & *(__u16 *)buf;
|
|
|
|
right0 = *(__u16 *)(buf + 1) >> 4;
|
|
|
|
|
|
|
|
**Bit-packed representation.**
|
|
|
|
pixels cross the byte boundary and have a ratio of 3 bytes for each
|
|
|
|
interleaved pixel.
|
|
|
|
|
|
|
|
.. flat-table::
|
|
|
|
:header-rows: 0
|
|
|
|
:stub-columns: 0
|
|
|
|
|
[media] v4l: doc: Remove row numbers from tables
Shorten the tables by removing row numbers in comments, allowing for
later insertion of rows with minimal diffs.
All changes have been generated by the following script.
import io
import re
import sys
def process_table(fname, data):
if fname.endswith('hist-v4l2.rst'):
data = re.sub(u'\n{1,2}\t( ?) -( ?) ?', u'\n\t\\1 -\\2', data, flags = re.MULTILINE)
data = re.sub(u'\n(\t| )- \.\. row [0-9]+\n\t ?-( ?) ?', u'\\1* -\\2', data, flags = re.MULTILINE)
else:
data = re.sub(u'\n{1,2} -( ?) ?', u'\n -\\1', data, flags = re.MULTILINE)
data = re.sub(u'(\n?)(\n\n - \.\. row 1\n)', u'\n\\2', data, flags = re.MULTILINE)
data = re.sub(u'\n - \.\. row [0-9]+\n -( ?) ?', u' * -\\1', data, flags = re.MULTILINE)
data = re.sub(u'\n - \.\. row [0-9]+\n \.\. (_[A-Z0-9_`-]*:)', u'\n - .. \\1', data, flags = re.MULTILINE)
data = re.sub(u'\n - \.\. (_[A-Z0-9_`-]*:)\n -', u' * .. \\1\n\n -', data, flags = re.MULTILINE)
data = re.sub(u'^ - ', u' -', data, flags = re.MULTILINE)
data = re.sub(u'^(\t{1,2}) ', u'\\1', data, flags = re.MULTILINE)
return data
def process_file(fname, data):
buf = io.StringIO(data)
output = ''
in_table = False
table_separator = 0
for line in buf.readlines():
if line.find('.. flat-table::') != -1:
in_table = True
table = ''
elif in_table and not re.match('^[\t\n]|( )', line):
in_table = False
output += process_table(fname, table)
if in_table:
table += line
else:
output += line
if in_table:
in_table = False
output += process_table(fname, table)
return output
fname = sys.argv[1]
data = file(fname, 'rb').read().decode('utf-8')
data = process_file(fname, data)
file(fname, 'wb').write(data.encode('utf-8'))
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2016-09-05 14:44:34 +03:00
|
|
|
* - Y'\ :sub:`0left[7:0]`
|
|
|
|
- Y'\ :sub:`0right[3:0]`\ Y'\ :sub:`0left[11:8]`
|
|
|
|
- Y'\ :sub:`0right[11:4]`
|