2016-06-30 21:18:56 +08:00
|
|
|
.. -*- coding: utf-8; mode: rst -*-
|
|
|
|
|
|
|
|
.. _V4L2-PIX-FMT-SRGGB10P:
|
2016-07-08 03:16:21 +08:00
|
|
|
.. _v4l2-pix-fmt-sbggr10p:
|
|
|
|
.. _v4l2-pix-fmt-sgbrg10p:
|
|
|
|
.. _v4l2-pix-fmt-sgrbg10p:
|
2016-06-30 21:18:56 +08:00
|
|
|
|
|
|
|
*******************************************************************************************************************************
|
|
|
|
V4L2_PIX_FMT_SRGGB10P ('pRAA'), V4L2_PIX_FMT_SGRBG10P ('pgAA'), V4L2_PIX_FMT_SGBRG10P ('pGAA'), V4L2_PIX_FMT_SBGGR10P ('pBAA'),
|
|
|
|
*******************************************************************************************************************************
|
|
|
|
|
|
|
|
*man V4L2_PIX_FMT_SRGGB10P(2)*
|
|
|
|
|
|
|
|
V4L2_PIX_FMT_SGRBG10P
|
|
|
|
V4L2_PIX_FMT_SGBRG10P
|
|
|
|
V4L2_PIX_FMT_SBGGR10P
|
|
|
|
10-bit packed Bayer formats
|
|
|
|
|
|
|
|
|
|
|
|
Description
|
|
|
|
===========
|
|
|
|
|
|
|
|
These four pixel formats are packed raw sRGB / Bayer formats with 10
|
|
|
|
bits per colour. Every four consecutive colour components are packed
|
|
|
|
into 5 bytes. Each of the first 4 bytes contain the 8 high order bits of
|
|
|
|
the pixels, and the fifth byte contains the two least significants bits
|
|
|
|
of each pixel, in the same order.
|
|
|
|
|
|
|
|
Each n-pixel row contains n/2 green samples and n/2 blue or red samples,
|
|
|
|
with alternating green-red and green-blue rows. They are conventionally
|
|
|
|
described as GRGR... BGBG..., RGRG... GBGB..., etc. Below is an example
|
|
|
|
of one of these formats:
|
|
|
|
|
2016-07-05 00:58:01 +08:00
|
|
|
**Byte Order.**
|
2016-06-30 21:18:56 +08:00
|
|
|
Each cell is one byte.
|
|
|
|
|
|
|
|
|
|
|
|
|
[media] docs-rst: add tabularcolumns to all tables
LaTeX doesn't handle too well auto-width on tables, and ReST
markup requires an special tag to give it the needed hints.
As we're using A4 paper, we have 17cm of useful spaces. As
most media tables have widths, let's use it to generate the
needed via the following perl script:
my ($line_size, $table_header, $has_cols) = (17.5, 0, 0);
my $out;
my $header = "";
my @widths = ();
sub round { $_[0] > 0 ? int($_[0] + .5) : -int(-$_[0] + .5) }
while (<>) {
if (!$table_header) {
$has_cols = 1 if (m/..\s+tabularcolumns::/);
if (m/..\s+flat-table::/) {
$table_header = 1;
$header = $_;
next;
}
$out .= $_;
next;
}
$header .= $_;
@widths = split(/ /, $1) if (m/:widths:\s+(.*)/);
if (m/^\n$/) {
if (!$has_cols && @widths) {
my ($tot, $t, $i) = (0, 0, 0);
foreach my $v(@widths) { $tot += $v; };
$out .= ".. tabularcolumns:: |";
for ($i = 0; $i < scalar @widths - 1; $i++) {
my $v = $widths[$i];
my $w = round(10 * ($v * $line_size) / $tot) / 10;
$out .= sprintf "p{%.1fcm}|", $w;
$t += $w;
}
my $w = $line_size - $t;
$out .= sprintf "p{%.1fcm}|\n\n", $w;
}
$out .= $header;
$table_header = 0;
$has_cols = 0;
$header = "";
@widths = ();
}
}
print $out;
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2016-08-17 19:14:19 +08:00
|
|
|
.. tabularcolumns:: |p{5.0cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|
|
|
|
|
|
2016-06-30 21:18:56 +08:00
|
|
|
.. flat-table::
|
|
|
|
:header-rows: 0
|
|
|
|
:stub-columns: 0
|
|
|
|
:widths: 2 1 1 1 1 1
|
|
|
|
|
|
|
|
|
|
|
|
- .. row 1
|
|
|
|
|
|
|
|
- start + 0:
|
|
|
|
|
|
|
|
- B\ :sub:`00high`
|
|
|
|
|
|
|
|
- G\ :sub:`01high`
|
|
|
|
|
|
|
|
- B\ :sub:`02high`
|
|
|
|
|
|
|
|
- G\ :sub:`03high`
|
|
|
|
|
|
|
|
- B\ :sub:`00low`\ (bits 7--6) G\ :sub:`01low`\ (bits 5--4)
|
2016-07-05 03:25:48 +08:00
|
|
|
B\ :sub:`02low`\ (bits 3--2) G\ :sub:`03low`\ (bits 1--0)
|
2016-06-30 21:18:56 +08:00
|
|
|
|
|
|
|
- .. row 2
|
|
|
|
|
|
|
|
- start + 5:
|
|
|
|
|
|
|
|
- G\ :sub:`10high`
|
|
|
|
|
|
|
|
- R\ :sub:`11high`
|
|
|
|
|
|
|
|
- G\ :sub:`12high`
|
|
|
|
|
|
|
|
- R\ :sub:`13high`
|
|
|
|
|
|
|
|
- G\ :sub:`10low`\ (bits 7--6) R\ :sub:`11low`\ (bits 5--4)
|
2016-07-05 03:25:48 +08:00
|
|
|
G\ :sub:`12low`\ (bits 3--2) R\ :sub:`13low`\ (bits 1--0)
|
2016-06-30 21:18:56 +08:00
|
|
|
|
|
|
|
- .. row 3
|
|
|
|
|
|
|
|
- start + 10:
|
|
|
|
|
|
|
|
- B\ :sub:`20high`
|
|
|
|
|
|
|
|
- G\ :sub:`21high`
|
|
|
|
|
|
|
|
- B\ :sub:`22high`
|
|
|
|
|
|
|
|
- G\ :sub:`23high`
|
|
|
|
|
|
|
|
- B\ :sub:`20low`\ (bits 7--6) G\ :sub:`21low`\ (bits 5--4)
|
2016-07-05 03:25:48 +08:00
|
|
|
B\ :sub:`22low`\ (bits 3--2) G\ :sub:`23low`\ (bits 1--0)
|
2016-06-30 21:18:56 +08:00
|
|
|
|
|
|
|
- .. row 4
|
|
|
|
|
|
|
|
- start + 15:
|
|
|
|
|
|
|
|
- G\ :sub:`30high`
|
|
|
|
|
|
|
|
- R\ :sub:`31high`
|
|
|
|
|
|
|
|
- G\ :sub:`32high`
|
|
|
|
|
|
|
|
- R\ :sub:`33high`
|
|
|
|
|
|
|
|
- G\ :sub:`30low`\ (bits 7--6) R\ :sub:`31low`\ (bits 5--4)
|
2016-07-05 03:25:48 +08:00
|
|
|
G\ :sub:`32low`\ (bits 3--2) R\ :sub:`33low`\ (bits 1--0)
|