[NUT-devel] [nut]: r669 - docs/nut4cc.txt

stefano subversion at mplayerhq.hu
Wed May 26 00:35:46 CEST 2010


Author: stefano
Date: Wed May 26 00:35:45 2010
New Revision: 669

Log:
Describe a scheme for defining FourCCs for generic rawvideo YUVA
formats, and use it for creating a bunch of them:
Y1[00][16], [16][00]1Y, Y3[11][16], [16][11]3Y, Y3[10][16],
[16][10]3Y, Y3[00][16], [16][00]3Y, Y4[11][ 8], YA[00][ 8].

Modified:
   docs/nut4cc.txt

Modified: docs/nut4cc.txt
==============================================================================
--- docs/nut4cc.txt	Sun May 16 18:41:15 2010	(r668)
+++ docs/nut4cc.txt	Wed May 26 00:35:45 2010	(r669)
@@ -101,6 +101,39 @@ RGB[8]  Packed RGB 3:3:2,  8bpp, (msb)2R
 RGB[48] Packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as little-endian [NOT in AVI]
 [48]RGB Packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as big-endian    [NOT in AVI]
 
+Since many exotic planar YUVA pixel formats are not contemplated by
+the AVI/QuickTime FourCC lists, the following scheme is adopted for
+representing them.
+
+The first two bytes can contain the values:
+Y1 = only Y
+Y2 = Y+A
+Y3 = YUV
+Y4 = YUVA
+
+The third byte represents the width and height chroma subsampling
+values for the UV planes, that is the amount to shift the luma
+width/height right to find the chroma width/height.
+
+The fourth byte is the number of bits used (8, 16, ...).
+
+If the order of bytes is inverted, that means that each component has
+to be read big-endian.
+
+Follows the list of the supported YUVA planar format FourCCs created
+using this scheme:
+
+Y1[00][16]  Planar gray, 16bpp, little-endian [NOT in AVI]
+[16][00]1Y  Planar gray, 16bpp, big-endian    [NOT in AVI]
+Y3[11][16]  Planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian [NOT in AVI]
+[16][11]3Y  Planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian    [NOT in AVI]
+Y3[10][16]  Planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian [NOT in AVI]
+[16][10]3Y  Planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian    [NOT in AVI]
+Y3[00][16]  Planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian [NOT in AVI]
+[16][00]3Y  Planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian    [NOT in AVI]
+Y4[11][ 8]  Planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A samples)            [NOT in AVI]
+Y2[00][ 8]  8bit gray, 8bit alpha [NOT in AVI]
+
 Raw audio: [x] is an byte with value x,  [NOT in AVI]
 ALAW    A-LAW
 ULAW    MU-LAW


More information about the NUT-devel mailing list