V210: Difference between revisions

From MultimediaWiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
The v210 format is a packed YUV 4:2:2 (UYVY) format with 10 bits per component.
The v210 format is a packed YUV 4:2:2 (UYVY) format with 10 bits per component.
Data is stored in blocks of 32 bit values in little-endian.
Data is stored in blocks of 32 bit values in little-endian.
Each such block contains 3 components, one each in bits 0 - 9, 10 - 20 and 20 - 30, the remaining two bits are unused.
Each such block contains 3 components, one each in bits 0 - 9, 10 - 20 and 20 - 30, the remaining two bits are unused.
Since UYVY consists of 4 components that represent two pixels, which of those bits correspond to which component makes a pattern that repeats every 4 32-bit blocks:
Since UYVY consists of 4 components that represent two pixels, which of those bits correspond to which component makes a pattern that repeats every 4 32-bit blocks:
block 1, bits  0 -  9: U
 
block 1, bits 10 - 20: Y
  block 1, bits  0 -  9: U
block 1, bits 20 - 30: V
  block 1, bits 10 - 20: Y
block 2, bits  0 -  9: Y
  block 1, bits 20 - 30: V
block 2, bits 10 - 20: U
  block 2, bits  0 -  9: Y
block 2, bits 20 - 30: Y
  block 2, bits 10 - 20: U
block 3, bits  0 -  9: V
  block 2, bits 20 - 30: Y
block 3, bits 10 - 20: Y
  block 3, bits  0 -  9: V
block 3, bits 20 - 30: U
  block 3, bits 10 - 20: Y
block 4, bits  0 -  9: Y
  block 3, bits 20 - 30: U
block 4, bits 10 - 20: V
  block 4, bits  0 -  9: Y
block 4, bits 20 - 30: Y
  block 4, bits 10 - 20: V
  block 4, bits 20 - 30: Y


In addition the start of each line is aligned to a multiple of 64 (or possible 128) bytes, where unused blocks are padded with 0.
In addition the start of each line is aligned to a multiple of 64 (or possible 128) bytes, where unused blocks are padded with 0.
Unused parts of a partial (i.e. last) block do not seem to contain any specific value.
Unused parts of a partial (i.e. last) block do not seem to contain any specific value.

Revision as of 11:28, 17 February 2009

The v210 format is a packed YUV 4:2:2 (UYVY) format with 10 bits per component.

Data is stored in blocks of 32 bit values in little-endian.

Each such block contains 3 components, one each in bits 0 - 9, 10 - 20 and 20 - 30, the remaining two bits are unused.

Since UYVY consists of 4 components that represent two pixels, which of those bits correspond to which component makes a pattern that repeats every 4 32-bit blocks:

 block 1, bits  0 -  9: U
 block 1, bits 10 - 20: Y
 block 1, bits 20 - 30: V
 block 2, bits  0 -  9: Y
 block 2, bits 10 - 20: U
 block 2, bits 20 - 30: Y
 block 3, bits  0 -  9: V
 block 3, bits 10 - 20: Y
 block 3, bits 20 - 30: U
 block 4, bits  0 -  9: Y
 block 4, bits 10 - 20: V
 block 4, bits 20 - 30: Y

In addition the start of each line is aligned to a multiple of 64 (or possible 128) bytes, where unused blocks are padded with 0.

Unused parts of a partial (i.e. last) block do not seem to contain any specific value.