Avisynthplus color formats

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
(TODO - placeholder)
 
(See also: Add see also)
 
(19 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[TODO]]
+
<div style="max-width:82em; min-width:42em;" >
 +
{{AvsPlusHeader}}<div style="max-width:62em" >
 +
 
 +
__TOC__
 +
 
 +
 
 +
===== Color Format Hierarchy =====
 +
&nbsp;''(one possible arrangement)''<br>
 +
<div style="border:none; background-color:#fafafa; padding:1em; margin:2pt 2em 2em 2pt; font-size:100%; line-height:95%">
 +
{| style="border:none;border-spacing:0" 
 +
|-
 +
| colspan="5" style="line-height:250%" | '''Color Class <u>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</u>'''
 +
| colspan="4"  | '''[[Clip_properties#Video:_Color_Format|Clip Property]] Test <u>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</u>'''
 +
| '''Formats <u>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</u>'''
 +
|-
 +
| style="width:4em"|
 +
| style="width:4em"|
 +
| style="width:4em"|
 +
| style="width:2em"|
 +
| style="width:2em"|
 +
| style="width:4em"|
 +
| style="width:4em"|
 +
| style="width:4em"|
 +
| style="width:10em"|
 +
| style="width:18em"|
 +
|-
 +
| colspan="5"  | '''''All [[RGB]] clips '''''
 +
| colspan="4"  | <tt>'''IsRGB'''</tt>
 +
|
 +
|-
 +
| colspan="10" | &nbsp;
 +
|-
 +
| <center> </center>
 +
| colspan="4"  | '''''[[Interleaved]] RGB(A) '''''
 +
|
 +
| colspan="3"  | <tt>'''IsInterleaved'''</tt>
 +
|
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''IsRGB24'''</tt>
 +
| RGB24 <small>{{Sup2|[''8bit'']}}</small>
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''IsRGB48'''</tt>
 +
| RGB48 <small>{{Sup2|[''16bit'']}}</small>
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''IsRGB32'''</tt>
 +
| RGB32 <small>{{Sup2|RGBA [''8bit'']}}</small>
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''IsRGB64'''</tt>
 +
| RGB64 <small>{{Sup2|RGBA [''16bit'']}}</small>
 +
|-
 +
| colspan="10" | &nbsp;
 +
|-
 +
| <center> </center>
 +
| colspan="4"  | '''''[[Planar]] RGB(A)'''''
 +
|
 +
| colspan="3"  | <tt>'''IsPlanar'''</tt>&nbsp; ''or'' &nbsp;<tt>'''!(IsInterleaved)'''</tt>
 +
|
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| colspan="3"  | '''''Planar RGB '''''
 +
|
 +
|
 +
|
 +
| <tt>'''IsPlanarRGB'''</tt>
 +
| RGBP[[#Footnotes|''xx'']]
 +
|-
 +
| colspan="10" | &nbsp;
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| colspan="3"  | '''''Planar RGBA '''''
 +
|
 +
|
 +
|
 +
| <tt>'''IsPlanarRGBA'''</tt>
 +
| RGBAP''xx''
 +
|-
 +
| colspan="10" | &nbsp;
 +
|-
 +
| colspan="10" | &nbsp;
 +
|-
 +
| colspan="2" | '''''All [[YUV]] clips'''''
 +
|
 +
|
 +
|
 +
| colspan="4" | <tt>'''(IsYUV<nowiki>||</nowiki>IsYUVA)'''</tt>&nbsp; ''or'' &nbsp;<tt>'''!(IsRGB)'''</tt>
 +
|
 +
|-
 +
| colspan="10" | &nbsp;
 +
|-
 +
| <center> </center>
 +
| colspan="4"  | '''''[[Interleaved]] YUV'''''
 +
|
 +
| colspan="3"  | <tt>'''IsInterleaved'''</tt>
 +
|
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''IsYUY2'''</tt>
 +
| YUY2 <small>{{Sup2|[''8bit'']}}</small>
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| (none)
 +
| V210 <small>{{Sup2|[''10bit'']}}</small> [[#Footnotes|§]]
 +
|-
 +
| colspan="10" | &nbsp;
 +
|-
 +
| <center> </center>
 +
| colspan="4"  | '''''[[Planar]] YUV(A) '''''
 +
|
 +
| colspan="3"  | <tt>'''IsPlanar'''</tt>&nbsp; ''or'' &nbsp;<tt>'''!(IsInterleaved)'''</tt>
 +
|
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| colspan="3"  | '''''Planar YUV'''''
 +
|
 +
|
 +
| colspan="2"  | <tt>'''IsYUV'''</tt>
 +
|
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''Is444'''</tt>
 +
| YUV444[[#Footnotes|''xx'']]; YV24 <small>{{Sup2|[''8bit'']}}</small>
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''Is422'''</tt>
 +
| YUV422''xx''; YV16 <small>{{Sup2|[''8bit'']}}</small>; P216 <small>{{Sup2|[''16bit'']}}</small>
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''Is420'''</tt>
 +
| YUV420''xx''; YV12 <small>{{Sup2|[''8bit'']}}</small>
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''IsYV411'''</tt>
 +
| YV411
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''IsY'''</tt>
 +
| Y''xx'' [[#Footnotes|‡]]
 +
|-
 +
| colspan="10" | &nbsp;
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| colspan="3"  | '''''Planar YUVA'''''
 +
|
 +
|
 +
| colspan="2"  | <tt>'''IsYUVA'''</tt>&nbsp; ''or'' &nbsp;<tt>'''!(IsYUV)'''</tt>
 +
|
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''Is444'''</tt>
 +
| YUVA444[[#Footnotes|''xx'']]
 +
 
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''Is422'''</tt>
 +
| YUVA422''xx''
 +
|-
 +
| <center> </center>
 +
| <center> </center>
 +
| <center> </center>
 +
|
 +
|
 +
|
 +
|
 +
|
 +
| <tt>'''Is420'''</tt>
 +
| YUVA420''xx''
 +
|}
 +
</div>
 +
 
 +
<!-- ========================================================================================== -->
 +
===== Color Format Table =====
 +
 
 +
{|border=1 cellspacing=1 cellpadding=1 class="wikitable sortable"
 +
! style="width:6em" | Group
 +
! style="width:8em" | PixelType
 +
! style="width:6em" | [[#Footnotes|FourCC{{BoldColor|black|140|¹}}]]
 +
! style="width:6em" | [[#Footnotes|Bit depth{{BoldColor|black|140|²}}]]
 +
! [[#Footnotes|Interleaved{{BoldColor|black|140|³}}]]
 +
! style="width:4em" | Version
 +
! style="width:12em" class="unsortable" | Remarks
 +
|-
 +
| RGB
 +
|  RGB24
 +
| style="padding-left:1em"  | <code>BGR[24]</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
| style="text-align:center" | x
 +
| style="text-align:center" | {{AvsIcon2}}
 +
 +
|-
 +
| RGB 
 +
|  RGB48
 +
| style="padding-left:1em"  | <code>BGR0</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
| style="text-align:center" | x
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGBA 
 +
|  RGB32
 +
| style="padding-left:1em"  | <code>BGRA</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
| style="text-align:center" | x
 +
| style="text-align:center" | {{AvsIcon2}}
 +
 +
|-
 +
| RGBA
 +
|  RGB64
 +
| style="padding-left:1em" | <code>BRA[64]</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
| style="text-align:center" | x
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGB 
 +
|  RGBP8
 +
| style="padding-left:1em" | <code>G3[0][8]</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
|  ''aka RGBP''
 +
|-
 +
| RGB 
 +
|  RGBP10
 +
| style="padding-left:1em" | <code>G3[0][10]</code>
 +
| style="text-align:right;padding-right:3em" | 10
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGB 
 +
|  RGBP12
 +
| style="padding-left:1em" | <code>G3[0][12]</code>
 +
| style="text-align:right;padding-right:3em" | 12
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGB 
 +
|  RGBP14
 +
| style="padding-left:1em" | <code>G3[0][14]</code>
 +
| style="text-align:right;padding-right:3em" | 14
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGB 
 +
|  RGBP16
 +
| style="padding-left:1em" | <code>G3[0][16]</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGB 
 +
|  RGBPS
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 32
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGBA 
 +
|  RGBAP8
 +
| style="padding-left:1em" | <code>G4[0][8]</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
|  ''aka RGBAP''
 +
|-
 +
| RGBA 
 +
|  RGBAP10
 +
| style="padding-left:1em" | <code>G4[0][10]</code>
 +
| style="text-align:right;padding-right:3em" | 10
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGBA 
 +
|  RGBAP12
 +
| style="padding-left:1em" | <code>G4[0][12]</code>
 +
| style="text-align:right;padding-right:3em" | 12
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGBA 
 +
|  RGBAP14
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 14
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGBA 
 +
|  RGBAP16
 +
| style="padding-left:1em" | <code>G4[0][16]</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| RGBA 
 +
|  RGBAPS
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 32
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV444
 +
| YUV444P8
 +
| style="padding-left:1em" | <code>444P</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
|
 +
| style="text-align:center" | {{AvsIcon2}} 
 +
|  ''aka YUV444, YV24''
 +
|-
 +
| YUV444 
 +
|  YUV444P10
 +
| style="padding-left:1em" | <code>Y3[0][10]</code>
 +
| style="text-align:right;padding-right:3em" | 10
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV444 
 +
|  YUV444P12
 +
| style="padding-left:1em" | <code>Y3[0][12]</code>
 +
| style="text-align:right;padding-right:3em" | 12
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV444 
 +
|  YUV444P14
 +
| style="padding-left:1em" | <code>Y3[0][14]</code>
 +
| style="text-align:right;padding-right:3em" | 14
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV444 
 +
|  YUV444P16
 +
| style="padding-left:1em" | <code>Y3[0][16]</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV444 
 +
|  YUV444PS
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 32
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA444 
 +
|  YUVA444P8
 +
| style="padding-left:1em" | <code>Y4[0][8]</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
|
 +
| style="text-align:center" | {{AvsPluscon2}} 
 +
|  ''aka YUVA444''
 +
|-
 +
| YUVA444 
 +
|  YUVA444P10
 +
| style="padding-left:1em" | <code>Y4[0][10]</code>
 +
| style="text-align:right;padding-right:3em" | 10
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA444 
 +
|  YUVA444P12
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 12
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA444 
 +
|  YUVA444P14
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 14
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA444 
 +
|  YUVA444P16
 +
| style="padding-left:1em" | <code>Y4[0][16]</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA444 
 +
|  YUVA444PS
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 32
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV422
 +
|  YUY2
 +
| style="padding-left:1em" | <code>YUY2</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
| style="text-align:center" | x
 +
| style="text-align:center" | {{AvsIcon2}}
 +
 +
|-
 +
| YUV422
 +
|  YUV422P8
 +
| style="padding-left:1em" | <code>Y42B</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
|
 +
| style="text-align:center" | {{AvsIcon2}} 
 +
|  ''aka YUV422, YV16''
 +
|-
 +
| YUV422 
 +
|  YUV422P10
 +
| style="padding-left:1em" | <code>Y3[10][10]</code>
 +
| style="text-align:right;padding-right:3em" | 10
 +
|
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
| ''aka P210'' <br><small>special-case: V210 output available; see footnotes</small> [[#Footnotes|{{BoldColor|black|96|§}}]]
 +
|-
 +
| YUV422 
 +
|  YUV422P12
 +
| style="padding-left:1em" | <code>Y3[10][12]</code>
 +
| style="text-align:right;padding-right:3em" | 12
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV422 
 +
|  YUV422P14
 +
| style="padding-left:1em" | <code>Y3[10][14]</code>
 +
| style="text-align:right;padding-right:3em" | 14
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV422 
 +
|  YUV422P16
 +
| style="padding-left:1em" | <code>Y3[10][16]</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
|  ''aka P216'' 
 +
|-
 +
| YUV422 
 +
|  YUV422PS
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 32
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA422 
 +
|  YUVA422P8
 +
| style="padding-left:1em" | <code>Y4[10][8]</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
|
 +
| style="text-align:center" | {{AvsPluscon2}} 
 +
|  ''aka YUVA422''
 +
|-
 +
| YUVA422
 +
|  YUVA422P10
 +
| style="padding-left:1em" | <code>Y4[10][10]</code>
 +
| style="text-align:right;padding-right:3em" | 10
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA422 
 +
|  YUVA422P12
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 12
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA422 
 +
|  YUVA422P14
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 14
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA422 
 +
|  YUVA422P16
 +
| style="padding-left:1em" | <code>Y4[10][16]</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA422 
 +
|  YUVA422PS
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 32
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV420
 +
|  YV12
 +
| style="padding-left:1em" | <code>I420</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
|
 +
| style="text-align:center" | {{AvsIcon2}}
 +
|  ''aka YUV420, YV12''
 +
|-
 +
| YUV420 
 +
|  YUV420P8
 +
| style="padding-left:1em" | <code>I420</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
|
 +
| style="text-align:center" | {{AvsIcon2}} 
 +
|  ''aka YUV420, YV12''
 +
|-
 +
| YUV420
 +
|  YUV420P10
 +
| style="padding-left:1em" | <code>Y3[11][10]</code>
 +
| style="text-align:right;padding-right:3em" | 10
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV420
 +
|  YUV420P12
 +
| style="padding-left:1em" | <code>Y3[11][12]</code>
 +
| style="text-align:right;padding-right:3em" | 12
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV420
 +
|  YUV420P14
 +
| style="padding-left:1em" | <code>Y3[11][14]</code>
 +
| style="text-align:right;padding-right:3em" | 14
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV420 
 +
|  YUV420P16
 +
| style="padding-left:1em" | <code>Y3[11][16]</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV420 
 +
|  YUV420PS
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 32
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA420
 +
|  YUVA420P8
 +
| style="padding-left:1em" | <code>Y4[11][8]</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
|
 +
| style="text-align:center" | {{AvsPluscon2}} 
 +
|  ''aka YUVA420''
 +
|-
 +
| YUVA420
 +
|  YUVA420P10
 +
| style="padding-left:1em" | <code>Y4[11][10]</code>
 +
| style="text-align:right;padding-right:3em" | 10
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA420
 +
|  YUVA420P12
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 12
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA420
 +
|  YUVA420P14
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 14
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA420
 +
|  YUVA420P16
 +
| style="padding-left:1em" | <code>Y4[11][16]</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUVA420 
 +
|  YUVA420PS
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 32
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| YUV411
 +
|  YUV411P8
 +
| style="padding-left:1em" | <code>Y41B</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
|
 +
| style="text-align:center" | {{AvsIcon2}} 
 +
|  ''aka YUV411, YV411''
 +
|-
 +
| YUV410
 +
|  YUV9
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
|  ''read only?''
 +
|-
 +
| Y only
 +
|  Y8
 +
| style="padding-left:1em" | <code>Y800</code>
 +
| style="text-align:right;padding-right:3em" | 8
 +
| style="text-align:center" | {{BoldColor|black|100|‡}}
 +
| style="text-align:center" | {{AvsIcon2}}
 +
 +
|-
 +
| Y only 
 +
|  Y10
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 10
 +
| style="text-align:center" | {{BoldColor|black|100|‡}} 
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| Y only 
 +
|  Y12
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 12
 +
| style="text-align:center" | {{BoldColor|black|100|‡}} 
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| Y only 
 +
|  Y14
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 14
 +
| style="text-align:center" | {{BoldColor|black|100|‡}} 
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| Y only 
 +
|  Y16
 +
| style="padding-left:1em" | <code>Y1[0][16]</code>
 +
| style="text-align:right;padding-right:3em" | 16
 +
| style="text-align:center" | {{BoldColor|black|100|‡}} 
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|-
 +
| Y only 
 +
|  Y32
 +
| style="padding-left:1em" | <code></code>
 +
| style="text-align:right;padding-right:3em" | 32
 +
| style="text-align:center" | {{BoldColor|black|100|‡}}
 +
| style="text-align:center" | {{AvsPluscon2}}
 +
 +
|}
 +
 
 +
===== Footnotes =====
 +
{| border="0"
 +
|-
 +
|style="text-align:center;vertical-align:top;width:3em"|{{AvsIcon2}}
 +
| Supported in both AviSynth+ and AviSynth 2.6.x
 +
|-
 +
|style="text-align:center;vertical-align:top"|{{AvsPluscon2}}
 +
| Supported in AviSynth+ only
 +
|-
 +
| style="text-align:right;padding-right:0.5em" | <small>[''8bit'']</small>
 +
| &nbsp;&nbsp;8-bit only
 +
|-
 +
| style="text-align:right;padding-right:0.5em" | <small>[''16bit'']</small>
 +
| 16-bit only
 +
|-
 +
| style="text-align:center" | ''xx''
 +
| 8, 10, 12, 14, 16 and 32 bits (32bit is floating-point; all others are integer)
 +
|-
 +
|style="text-align:center"|{{BoldColor|black|140|¹}}
 +
|[[FourCC]]: 4 characters used to identify media data formats.<br>Data shown is from [https://www.ffmpeg.org/ ffmpeg]. Left blank if unknown at this time (2017-10-16).
 +
|-
 +
|style="text-align:center"|{{BoldColor|black|140|²}}
 +
|32bit is floating-point; all others are integer.
 +
|-
 +
|style="text-align:center"|{{BoldColor|black|140|³}}
 +
|[[Interleaved]] if marked; else [[Planar]].
 +
|-
 +
|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.''
 +
|-
 +
|style="text-align:center;vertical-align:top" |{{BoldColor|black|100|§}}
 +
|VfW only: [http://wiki.multimedia.cx/index.php/V210 v210] 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}}
 +
|}
 +
 
 +
===== See also =====
 +
* [[Convert]]
 +
* [[ConvertBits]]
 +
* [[Internal_functions#Other_helper_functions|BuildPixelType]]
 +
* [[Internal_functions#Other_helper_functions|ColorSpaceNameToPixelType]]
 +
 
 +
===== External Links =====
 +
* [http://msdn.microsoft.com/en-us/library/windows/desktop/bb970578(v=vs.85).aspx ''10-bit and 16-bit YUV Video Formats''] (microsoft.com)
 +
* [http://wiki.multimedia.cx/index.php/V210 ''V210''] (multimedia.cx)
 +
* [http://www.fourcc.org/yuv.php ''YUV pixel formats''] (fourcc.org)
 +
* [http://www.fourcc.org/rgb.php ''RGB pixel formats''] (fourcc.org)
 +
</div>
 +
</div>
 +
 
 
[[Category:Avisynthplus]]
 
[[Category:Avisynthplus]]
 +
[[Category:Colourspace_Conversion]]

Latest revision as of 13:58, 13 December 2018

AviSynth+

Contents


[edit] 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
[edit] 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 [+] 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 [+] aka P210
special-case: V210 output available; see footnotes §
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 [+]
[edit] Footnotes
[A] Supported in both AviSynth+ and AviSynth 2.6.x
[+] Supported in AviSynth+ only
[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: v210 is served to Video for Windows clients but not used within AviSynth;
v210 output requires OPT_Enable_V210 [+]
[edit] See also
[edit] External Links
Personal tools