Nicolas Dufresne
9a3ee4838f
Revert "video: Add NV12_10LE40 pixel format"
...
This reverts commit 35d0783fca
.
2018-04-24 17:05:17 -04:00
ayaka
35d0783fca
video: Add NV12_10LE40 pixel format
...
This pixel format is a fully packed variant of NV12, a luma
pixel would take 10bits in memory, without any filled bits
between pixels in a stride. The color range follows
the BT.2020 standard.
In order to get a performance in hardware memory
operation, it may expend the stride, append zero data at the
end of echo lines.
Signed-off-by: ayaka <ayaka@soulik.info>
https://bugzilla.gnome.org/show_bug.cgi?id=795462
2018-04-24 16:51:27 -04:00
Nicolas Dufresne
bc3f9b53fa
video: Fix GRAY10_LE32 depth information
2018-02-07 14:48:00 -05:00
Nicolas Dufresne
eb7565b60e
video-format: Fix 10LE32 formats packing function
...
The source offset (soff) was not incremented for each component and then
each group of 3 components were inverted. This was causing a staircase
effect combined with some noise.
https://bugzilla.gnome.org/show_bug.cgi?id=789876
2018-02-06 16:18:40 -05:00
Nicolas Dufresne
c256e96047
video: Add NV16_10LE32 support
...
This adds a 10 bit variant for NV16 packed into 32 bits little endian
words. The MSB 2 bits are padding. This format is used on Xilinx SoC and
identified with the FOURCC XV20.
https://bugzilla.gnome.org/show_bug.cgi?id=789876
2018-01-29 16:01:34 +00:00
Nicolas Dufresne
f7a27d7403
video: Add GRAY10_LE32 support
...
This add a 10bit variant of gray scale packed into 32bits little endian
words. The MSB 2 bits are padding and should be ignored. This format is
used on Xilinx SoC and is identified with the FOURCC XV10.
https://bugzilla.gnome.org/show_bug.cgi?id=789876
2018-01-29 16:01:34 +00:00
Nicolas Dufresne
2b9725d0df
video: Add NV12_10LE32 support
...
This adds a 10bit variant for NV12 which packs 3 10bit components
into little endian 32bit words. The MSB 2 bits are padding and should be
ignored. This format is used on Xilinx SoC and is identified with there
with the FOURCC XV15
https://bugzilla.gnome.org/show_bug.cgi?id=789876
2018-01-29 16:01:34 +00:00
Wim Taymans
103d265cf0
Fix RGBA and ABGR pack/unpack on big endian cpu
...
The pack and unpack functions for RGBA and ABGR only work for little
endian cpus. Add variants for big endian as well.
2017-06-01 17:47:22 +02:00
Sebastian Dröge
ce9bac465a
video-format: Shift correctly when packing I420_12BE
2017-03-17 13:43:04 +02:00
Sebastian Dröge
77f802f8e6
video: Add I420/I422/Y444_12LE/BE and GBRA video formats
...
https://bugzilla.gnome.org/show_bug.cgi?id=780100
2017-03-16 17:32:27 +02:00
Emeric Grange
2fcab9e7ef
video: Add GBRA_10LE/BE, GBR_12LE/BE, GBRA_12LE/BE pixel formats
...
With additional bugfixes from Sebastian Dröge <sebastian@centricular.com>
https://bugzilla.gnome.org/show_bug.cgi?id=780100
2017-03-16 16:44:12 +02:00
Nicolas Dufresne
7a40442ad5
video: Add VYUY pixel format
...
This format is sometimes the output of JPEG decoders. It is the same as
YUY2 and UYVY but with a different component order.
https://bugzilla.gnome.org/show_bug.cgi?id=767450
2016-11-01 19:55:20 +02:00
Sebastian Dröge
02a88077fc
video: Fix some compiler warnings for out-of-range enum values
...
https://bugzilla.gnome.org/show_bug.cgi?id=767816
2016-07-12 00:14:13 +03:00
Joan Pau Beltran
abb88801e7
video: add IYU2 format
...
This existed in 0.10 and is needed by dc1394src.
IYU2 format is a YUV fully-sampled packed format similar to v308
but with different component order (U-Y-V instead of Y-U-V).
http://www.fourcc.org/yuv.php#IYU2
https://bugzilla.gnome.org/show_bug.cgi?id=763026#c5
2016-06-01 12:07:05 +01:00
Scott D Phillips
079ceb894c
video: add P010 format support
...
P010 is a YUV420 format with an interleaved U-V plane and 2-bytes per
component with the the color value stored in the 10 most significant
bits.
https://bugzilla.gnome.org/show_bug.cgi?id=761607
---
Changes since v2:
- Set bits=16 in DPTH10_10_10_HI
Changes since v1:
- Fixed x-offset calculation in uv.
- Added 6-bit shifts to FormatInfo.
2016-03-29 11:16:42 +03:00
Thiago Santos
df931fb0b8
video-format: add missing alpha flag for some formats
...
Some formats didn't have the alpha flag marked, use the correct
macro so they get it right.
https://bugzilla.gnome.org/show_bug.cgi?id=754808
2015-09-10 07:28:21 -03:00
Aurélien Zanelli
c52adc8fcc
video: add NV61 format support
...
https://bugzilla.gnome.org/show_bug.cgi?id=746466
2015-05-04 20:37:59 +01:00
Wim Taymans
dd5fa311a1
video-format: fix A422 subsampling description
2015-03-10 17:29:51 +01:00
Sebastian Dröge
06fd6f2f63
video: Add support for 10 bit planar AYUV formats
2015-03-10 10:31:28 +01:00
Wim Taymans
d1a9eacb75
video-format: more fixes for big endian
2015-03-02 13:27:23 +01:00
Wim Taymans
569ca5770c
video-format: add big-endian versions of RGB/BGR 15/16 pack/unpack
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=745337
2015-03-02 12:27:24 +01:00
Wim Taymans
45e408735c
video-format: add orc function for RGB15/16 unpack
2015-02-12 11:39:33 +01:00
Wim Taymans
c6fcb5575a
video-format: fix pstride of NV16 and NV24 formats
2015-02-10 09:22:50 +01:00
Wim Taymans
7b3bff644c
video-format: add unaligned fallbacks
...
Add fallback C implementations for when we can't call the ORC function
because of bad alignment.
2015-02-06 11:43:49 +01:00
Wim Taymans
4ab23677a9
video-format: fix GBR unpack
2015-01-27 10:52:29 +01:00
Sebastian Dröge
2bd4ea6e8e
Constify some static arrays everywhere
2015-01-21 09:49:47 +01:00
Tim-Philipp Müller
60d18149e5
video-format: sprinkle some 'restrict' keywords in pack/unpack functions
...
In cases where we just call orc directly this is somewhat
superfluous, but let's do it anyway for consistency. In
other cases the compiler can hopefully use this to optimise
memory access a little.
2014-11-27 15:04:12 +00:00
Wim Taymans
52d4dd1cb0
video-format: handle x offset in unpack
...
Add support for x offset in almost all unpack methods.
Fix naming of source and dest pixels.
Add const to source pixels.
2014-11-27 13:01:03 +01:00
Wim Taymans
a3da634db6
video-format: improve unpack i420
...
unpack_i420 does not need extra code to handle odd widths, the orc code
already handles it fine.
2014-11-27 10:51:58 +01:00
Wim Taymans
5c043f3d50
video-format: handle unpack interlaced subsampled formats
...
For interlaced vertically subsampled formats the check for even lines
needs to take into account the two fields.
2014-11-19 12:55:02 +01:00
Wim Taymans
0f64126919
video-format: add range extension to BGR_10XE format
2014-11-06 10:45:13 +01:00
Wim Taymans
cecb900704
video-format: fix pack of 4:2:0 formats
...
When packing 4:2:0 formats, we need to take the chroma from the even
lines, for the odd lines we only take luminance.
2014-11-06 10:45:13 +01:00
Wim Taymans
1f14077b41
video-format: fix range extension of UYVP
...
We need to shift the top 6 bits to the lower 6 bits
2014-11-06 10:45:13 +01:00
Wim Taymans
b2eb5f02fc
video-format: add alignment checks
...
Some of the ORC functions need specific alignment
2014-10-31 11:23:21 +01:00
Jan Schmidt
2a37534129
video: Various simple docs fixes
2014-08-15 01:08:12 +10:00
Sebastian Rasmussen
900c204eb9
videoformat: Remove duplicate/incorrect section
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725521
2014-03-02 23:41:51 +00:00
Sebastian Rasmussen
35bb1b3328
docs: Add annotations for return values
...
Rephrase and clarify some return value descriptions
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725521
2014-03-02 23:41:18 +00:00
Nicolas Dufresne
f52fd7a68b
video: Don't use extra plane and componenent for tile format
...
Instead of using extra plane, we encode the number of tiles in x and y in the stride of
each planes (i.e. y_tiles << 16 | x_tiles) and introduce tile_mode, tile_width and
tile_height into GstVideoFormatInfo structure.
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:47:03 -05:00
Wim Taymans
d899e6df5a
video: rename NV12T -> NV12_64Z32
...
Is a bit more descriptive and allows us to add more tiled types
later.
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:46:52 -05:00
Wim Taymans
f3e989179b
video-format: fix off-by-one for tiled coordinates
...
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:46:17 -05:00
Wim Taymans
33c486e5c1
video-format: use shifts when possible
...
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:46:01 -05:00
Wim Taymans
3ceb7dfe22
video-tile: add tile mode and helper functions
...
Move the tile helper functions to their own file. Make it possible to
make other tiling modes later.
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:45:37 -05:00
Wim Taymans
f8d3b9b4fc
video: add NV12T support
...
https://bugzilla.gnome.org/show_bug.cgi?id=707361
2014-01-13 10:45:26 -05:00
Wim Taymans
fae9d82515
video-format: fix NV24 pack/unpack function
...
We can't reuse the NV12 functions, we need to make new ones.
2013-09-06 12:45:36 +02:00
Wim Taymans
26d04c7582
video-format: handle odd width in more pack/unpack functions
2013-09-06 12:45:36 +02:00
Tim-Philipp Müller
2f6f0ee214
video-format: minor pack_YVYU optimisation
...
Re-use already calculated line offset.
2013-09-05 18:34:21 +01:00
Wim Taymans
e55ff1e374
video-format: fix chroma offsets
2013-09-05 17:06:36 +02:00
Wim Taymans
bbeac11e74
video-format: fix unpack functions for odd formats
2013-09-05 16:16:12 +02:00
Wim Taymans
d33e73e00f
video-format: clean up pack/unpack functions
2013-09-05 15:02:17 +02:00
Wim Taymans
6508c738ff
video-format: handle odd width in various pack functions
2013-09-05 14:13:24 +02:00