4:4:4 格式,每像素 32 位 (單位像素占的字節數: (4+4+4)/4 = 3)
色度信號的分辨率和亮度信號的分辨率是相同的
FOURCC 碼(Directshow:FOURCC 碼是一個 32 位、不帶正負號的整數,它是通過串聯四個 ASCII 字符創建而成的,MAKEFOURCC('Y','U','Y','2');)為 AYUV。4:4:4 格式是一個打包格式,其中每個像素都被編碼為四個連續字節,AYUV 內存布局組織順序如下所示。(標記了 A 的字節包含 alpha 的值)。
Increasing Memory Addresses
------------------------------------------------------------------------------------->
| U0 | V0 | Y0 | A0 | | U1 | V1 | Y1 | A1 | | U2 | V2 | Y2 | A2 | ......
4:2:2 格式,每像素 16 位(單位像素占的字節數: (4+2+2)/4 = 2)
色度信號的掃描線數量和亮度信號一樣多,但是每條掃描線上的色度采樣點數卻只有亮度信號的一半。
(1):YUY2
在 YUY2 格式中,數據可被視為一個不帶正負號的 char 值組成的數組,其中第一個字節包含第一個 Y 樣例,第二個字節包含第一個 U (Cb) 樣例,第三個字節包含第二個 Y 樣例,第四個字節包含第一個 V (Cr) 樣例,YUY2 內存布局如下圖 所示。如果該圖像被看作由兩個 little-endian WORD 值組成的數組,則第一個 WORD 在最低有效位 (LSB) 中包含 Y0,在最高有效位 (MSB) 中包含 U。第二個 WORD 在 LSB 中包含 Y1,在 MSB 中包含 V。
Increasing Memory Addresses
------------------------------------------------------------------------------------->
| Y0 | V0 | Y1 | V0 | | Y2 | U1 | Y3 | V1 | | Y4 | U2 | Y5 | V2 | ......
(2):UYVY
此格式與 YUY2 相同,只是字節順序是與之相反的 — 就是說,色度字節和燈光字節是翻轉的。如果該圖像被看作由兩個 little-endian WORD 值組成的數組,則第一個 WORD 在 LSB 中包含 U,在 MSB 中包含 Y0,第二個 WORD 在 LSB 中包含 V,在 MSB 中包含 Y1。UYVY 內存布局如下圖 所示。
Increasing Memory Addresses
------------------------------------------------------------------------------------->
| U0 | Y0 | V0 | Y1 | | U1 | Y2 | V1 | Y3 | | U2 | Y4 | V2 | Y5 | ......
4:2:0 格式,每像素 16 位(單位像素占的字節數: (4+1+1)/4 = 1.5)
無論是橫向還是縱向,色度信號的分辨率都只有亮度信號的一半
所有 Y 樣例都會作為不帶正負號的 char 值組成的數組首先顯示在內存中。后面跟著所有 V (Cr) 樣例,然后是所有 U (Cb) 樣例。它也有兩種存儲格式。
(1)
Increasing Memory Addresses
------------------------------------------------------------------------------------->
| Y0 | Y1 | Y2 | Y3| ......
| U0 | U1 | ......
| V0 | V1 | ......
(2)
Increasing Memory Addresses
------------------------------------------------------------------------------------->
| Y0 | Y1 | Y2 | Y3| ......
| V0 | V1 | ......
| U0 | U1 | ......