Avisynthplus color formats
From Avisynth wiki
(Difference between revisions)
Raffriff42 (Talk | contribs) (added experimental chart-like presentation) |
Raffriff42 (Talk | contribs) m (one more touch-up) |
||
Line 25: | Line 25: | ||
| style="width:18em"| | | style="width:18em"| | ||
|- | |- | ||
− | | colspan="5" | ''''' | + | | colspan="5" | '''''All [[RGB]] clips ''''' |
| colspan="4" | <tt>'''IsRGB'''</tt> | | colspan="4" | <tt>'''IsRGB'''</tt> | ||
| | | | ||
Line 32: | Line 32: | ||
|- | |- | ||
| <center> </center> | | <center> </center> | ||
− | | colspan="4" | ''''' | + | | colspan="4" | '''''[[Interleaved]] RGB(A) ''''' |
| | | | ||
| colspan="3" | <tt>'''IsInterleaved'''</tt> | | colspan="3" | <tt>'''IsInterleaved'''</tt> | ||
Line 84: | Line 84: | ||
|- | |- | ||
| <center> </center> | | <center> </center> | ||
− | | colspan="4" | '''''Planar RGB(A)''''' | + | | colspan="4" | '''''[[Planar]] RGB(A)''''' |
| | | | ||
| colspan="3" | <tt>'''IsPlanar'''</tt> ''or'' <tt>'''!(IsInterleaved)'''</tt> | | colspan="3" | <tt>'''IsPlanar'''</tt> ''or'' <tt>'''!(IsInterleaved)'''</tt> | ||
Line 91: | Line 91: | ||
| <center> </center> | | <center> </center> | ||
| <center> </center> | | <center> </center> | ||
− | | colspan="3" | ''''' | + | | colspan="3" | '''''Planar RGB ''''' |
| | | | ||
| | | | ||
| | | | ||
| <tt>'''IsPlanarRGB'''</tt> | | <tt>'''IsPlanarRGB'''</tt> | ||
− | | RGBP''xx'' | + | | RGBP[[#footnotes|''xx'']] |
|- | |- | ||
| colspan="10" | | | colspan="10" | | ||
Line 102: | Line 102: | ||
| <center> </center> | | <center> </center> | ||
| <center> </center> | | <center> </center> | ||
− | | colspan="3" | ''''' | + | | colspan="3" | '''''Planar RGBA ''''' |
| | | | ||
| | | | ||
| | | | ||
| <tt>'''IsPlanarRGBA'''</tt> | | <tt>'''IsPlanarRGBA'''</tt> | ||
− | | RGBAP''xx'' | + | | RGBAP''xx'' |
|- | |- | ||
| colspan="10" | | | colspan="10" | | ||
Line 113: | Line 113: | ||
| colspan="10" | | | colspan="10" | | ||
|- | |- | ||
− | | colspan="2" | ''''' | + | | colspan="2" | '''''All [[YUV]] clips''''' |
| | | | ||
| | | | ||
Line 123: | Line 123: | ||
|- | |- | ||
| <center> </center> | | <center> </center> | ||
− | | colspan="4" | ''''' | + | | colspan="4" | '''''[[Interleaved]] YUV''''' |
| | | | ||
| colspan="3" | <tt>'''IsInterleaved'''</tt> | | colspan="3" | <tt>'''IsInterleaved'''</tt> | ||
Line 153: | Line 153: | ||
|- | |- | ||
| <center> </center> | | <center> </center> | ||
− | | colspan="4" | ''''' | + | | colspan="4" | '''''[[Planar]] YUV(A) ''''' |
| | | | ||
| colspan="3" | <tt>'''IsPlanar'''</tt> ''or'' <tt>'''!(IsInterleaved)'''</tt> | | colspan="3" | <tt>'''IsPlanar'''</tt> ''or'' <tt>'''!(IsInterleaved)'''</tt> | ||
Line 160: | Line 160: | ||
| <center> </center> | | <center> </center> | ||
| <center> </center> | | <center> </center> | ||
− | | colspan="3" | ''''' | + | | colspan="3" | '''''Planar YUV''''' |
| | | | ||
| | | | ||
Line 175: | Line 175: | ||
| | | | ||
| <tt>'''Is444'''</tt> | | <tt>'''Is444'''</tt> | ||
− | | YUV444''xx''; YV24 <small>{{Sup2|[''8bit'']}}</small> | + | | YUV444[[#footnotes|''xx'']]; YV24 <small>{{Sup2|[''8bit'']}}</small> |
|- | |- | ||
| <center> </center> | | <center> </center> | ||
Line 225: | Line 225: | ||
| <center> </center> | | <center> </center> | ||
| <center> </center> | | <center> </center> | ||
− | | colspan="3" | ''''' | + | | colspan="3" | '''''Planar YUVA''''' |
| | | | ||
| | | | ||
Line 240: | Line 240: | ||
| | | | ||
| <tt>'''Is444'''</tt> | | <tt>'''Is444'''</tt> | ||
− | | YUVA444''xx'' | + | | YUVA444[[#footnotes|''xx'']] |
|- | |- | ||
Line 791: | Line 791: | ||
| 16-bit only | | 16-bit only | ||
|- | |- | ||
− | | style="text-align: | + | | style="text-align:center" | ''xx'' |
− | | 8, 10, 12, 14, 16- | + | | 8, 10, 12, 14, 16 and 32 bits (32bit is floating-point; all others are integer) |
|- | |- | ||
|style="text-align:center"|{{BoldColor|black|140|¹}} | |style="text-align:center"|{{BoldColor|black|140|¹}} | ||
Line 802: | Line 802: | ||
|style="text-align:center"|{{BoldColor|black|140|³}} | |style="text-align:center"|{{BoldColor|black|140|³}} | ||
|[[Interleaved]] if marked; else [[Planar]]. | |[[Interleaved]] if marked; else [[Planar]]. | ||
− | |||
− | |||
− | |||
|- | |- | ||
|style="text-align:center;vertical-align:top" |{{BoldColor|black|100|‡}} | |style="text-align:center;vertical-align:top" |{{BoldColor|black|100|‡}} | ||
|Y-only can be considered both planar ''and'' interleaved; however, a Y-only clip's [[Clip_properties#Video:_Color_Format|IsInterleaved]] property returns ''false.'' | |Y-only can be considered both planar ''and'' interleaved; however, a Y-only clip's [[Clip_properties#Video:_Color_Format|IsInterleaved]] property returns ''false.'' | ||
+ | |- | ||
+ | |style="text-align:center;vertical-align:top" |{{BoldColor|black|100|§}} | ||
+ | |VfW only: this format is served to [[wikipedia:Video_for_Windows|Video for Windows]] clients but not used within AviSynth<br>v210 output requires [[Internal_functions#OPT_Enable_V210|OPT_Enable_V210]] {{AvsPluscon2}} | ||
|} | |} | ||
Line 823: | Line 823: | ||
[[Category:Avisynthplus]] | [[Category:Avisynthplus]] | ||
+ | [[Category:Colourspace_Conversion]] |
Revision as of 12:45, 29 October 2017
AviSynth+ |
---|
Contents |
Color Format Hierarchy
(one possible arrangement)
Color Class | Clip Property Test | Formats | |||||||
All RGB clips | IsRGB | ||||||||
|
Interleaved RGB(A) | IsInterleaved | |||||||
|
|
IsRGB24 | RGB24 [8bit] | ||||||
|
|
IsRGB48 | RGB48 [16bit] | ||||||
|
|
IsRGB32 | RGB32 RGBA [8bit] | ||||||
|
|
IsRGB64 | RGB64 RGBA [16bit] | ||||||
|
Planar RGB(A) | IsPlanar or !(IsInterleaved) | |||||||
|
|
Planar RGB | IsPlanarRGB | RGBPxx | |||||
|
|
Planar RGBA | IsPlanarRGBA | RGBAPxx | |||||
All YUV clips | (IsYUV||IsYUVA) or !(IsRGB) | ||||||||
|
Interleaved YUV | IsInterleaved | |||||||
|
|
IsYUY2 | YUY2 [8bit] | ||||||
|
|
(none) | V210 [10bit] § | ||||||
|
Planar YUV(A) | IsPlanar or !(IsInterleaved) | |||||||
|
|
Planar YUV | IsYUV | ||||||
|
|
|
Is444 | YUV444xx; YV24 [8bit] | |||||
|
|
|
Is422 | YUV422xx; YV16 [8bit]; P216 [16bit] | |||||
|
|
|
Is420 | YUV420xx; YV12 [8bit] | |||||
|
|
|
IsYV411 | YV411 | |||||
|
|
|
IsY | Yxx ‡ | |||||
|
|
Planar YUVA | IsYUVA or !(IsYUV) | ||||||
|
|
|
Is444 | YUVA444xx | |||||
|
|
|
Is422 | YUVA422xx | |||||
|
|
|
Is420 | YUVA420xx |
Color Format Table
Group | PixelType | FourCC¹ | Bit depth² | Interleaved³ | Version | Remarks |
---|---|---|---|---|---|---|
RGB | RGB24 | BGR[24]
|
8 | x | [A] | |
RGB | RGB48 | BGR0
|
16 | x | [+] | |
RGBA | RGB32 | BGRA
|
8 | x | [A] | |
RGBA | RGB64 | BRA[64]
|
16 | x | [+] | |
RGB | RGBP8 | G3[0][8]
|
8 | [+] | aka RGBP | |
RGB | RGBP10 | G3[0][10]
|
10 | [+] | ||
RGB | RGBP12 | G3[0][12]
|
12 | [+] | ||
RGB | RGBP14 | G3[0][14]
|
14 | [+] | ||
RGB | RGBP16 | G3[0][16]
|
16 | [+] | ||
RGB | RGBPS |
|
32 | [+] | ||
RGBA | RGBAP8 | G4[0][8]
|
8 | [+] | aka RGBAP | |
RGBA | RGBAP10 | G4[0][10]
|
10 | [+] | ||
RGBA | RGBAP12 | G4[0][12]
|
12 | [+] | ||
RGBA | RGBAP14 |
|
14 | [+] | ||
RGBA | RGBAP16 | G4[0][16]
|
16 | [+] | ||
RGBA | RGBAPS |
|
32 | [+] | ||
YUV444 | YUV444P8 | 444P
|
8 | [A] | aka YUV444, YV24 | |
YUV444 | YUV444P10 | Y3[0][10]
|
10 | [+] | ||
YUV444 | YUV444P12 | Y3[0][12]
|
12 | [+] | ||
YUV444 | YUV444P14 | Y3[0][14]
|
14 | [+] | ||
YUV444 | YUV444P16 | Y3[0][16]
|
16 | [+] | ||
YUV444 | YUV444PS |
|
32 | [+] | ||
YUVA444 | YUVA444P8 | Y4[0][8]
|
8 | [A] | aka YUVA444 | |
YUVA444 | YUVA444P10 | Y4[0][10]
|
10 | [+] | ||
YUVA444 | YUVA444P12 |
|
12 | [+] | ||
YUVA444 | YUVA444P14 |
|
14 | [+] | ||
YUVA444 | YUVA444P16 | Y4[0][16]
|
16 | [+] | ||
YUVA444 | YUVA444PS |
|
32 | [+] | ||
YUV422 | YUY2 | YUY2
|
8 | x | [A] | |
YUV422 | YUV422P8 | Y42B
|
8 | [A] | aka YUV422, YV16 | |
YUV422 | YUV422P10 | Y3[10][10]
|
10 | x | [+] | aka v210; VfW only § |
YUV422 | YUV422P12 | Y3[10][12]
|
12 | [+] | ||
YUV422 | YUV422P14 | Y3[10][14]
|
14 | [+] | ||
YUV422 | YUV422P16 | Y3[10][16]
|
16 | [+] | aka P216 | |
YUV422 | YUV422PS |
|
32 | [+] | ||
YUVA422 | YUVA422P8 | Y4[10][8]
|
8 | [+] | aka YUVA422 | |
YUVA422 | YUVA422P10 | Y4[10][10]
|
10 | [+] | ||
YUVA422 | YUVA422P12 |
|
12 | [+] | ||
YUVA422 | YUVA422P14 |
|
14 | [+] | ||
YUVA422 | YUVA422P16 | Y4[10][16]
|
16 | [+] | ||
YUVA422 | YUVA422PS |
|
32 | [+] | ||
YUV420 | YV12 | I420
|
8 | [A] | aka YUV420, YV12 | |
YUV420 | YUV420P8 | I420
|
8 | [A] | aka YUV420, YV12 | |
YUV420 | YUV420P10 | Y3[11][10]
|
10 | [+] | ||
YUV420 | YUV420P12 | Y3[11][12]
|
12 | [+] | ||
YUV420 | YUV420P14 | Y3[11][14]
|
14 | [+] | ||
YUV420 | YUV420P16 | Y3[11][16]
|
16 | [+] | ||
YUV420 | YUV420PS |
|
32 | [+] | ||
YUVA420 | YUVA420P8 | Y4[11][8]
|
8 | [+] | aka YUVA420 | |
YUVA420 | YUVA420P10 | Y4[11][10]
|
10 | [+] | ||
YUVA420 | YUVA420P12 |
|
12 | [+] | ||
YUVA420 | YUVA420P14 |
|
14 | [+] | ||
YUVA420 | YUVA420P16 | Y4[11][16]
|
16 | [+] | ||
YUVA420 | YUVA420PS |
|
32 | [+] | ||
YUV411 | YUV411P8 | Y41B
|
8 | [A] | aka YUV411, YV411 | |
YUV410 | YUV9 |
|
8 | [+] | read only? | |
Y only | Y8 | Y800
|
8 | ‡ | [A] | |
Y only | Y10 |
|
10 | ‡ | [+] | |
Y only | Y12 |
|
12 | ‡ | [+] | |
Y only | Y14 |
|
14 | ‡ | [+] | |
Y only | Y16 | Y1[0][16]
|
16 | ‡ | [+] | |
Y only | Y32 |
|
32 | ‡ | [+] |
Footnotes
[A] | Supported in AviSynth 2.6.x |
[+] | Supported in both AviSynth & AviSynth+ |
[8bit] | 8-bit only |
[16bit] | 16-bit only |
xx | 8, 10, 12, 14, 16 and 32 bits (32bit is floating-point; all others are integer) |
¹ | FourCC: 4 characters used to identify media data formats. Data shown is from ffmpeg. Left blank if unknown at this time (2017-10-16). |
² | 32bit is floating-point; all others are integer. |
³ | Interleaved if marked; else Planar. |
‡ | Y-only can be considered both planar and interleaved; however, a Y-only clip's IsInterleaved property returns false. |
§ | VfW only: this format is served to Video for Windows clients but not used within AviSynth v210 output requires OPT_Enable_V210 [+] |
See also
External Links
- 10-bit and 16-bit YUV Video Formats (microsoft.com)
- V210 (multimedia.cx)
- YUV pixel formats (fourcc.org)
- RGB pixel formats (fourcc.org)