Swap

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
(Syntax and Parameters)
(add example with image)
Line 3: Line 3:
  
 
== Syntax and Parameters ==
 
== Syntax and Parameters ==
 +
<div style="max-width:62em" >
 
{{FuncDefH4|SwapUV}}
 
{{FuncDefH4|SwapUV}}
 
{{FuncDef
 
{{FuncDef
Line 41: Line 42:
 
:If {{FuncArg|clipY}} is given, copies the ''Y'' (luma channel) of {{FuncArg|clipY}} to the ''Y'' channel of the output clip.
 
:If {{FuncArg|clipY}} is given, copies the ''Y'' (luma channel) of {{FuncArg|clipY}} to the ''Y'' channel of the output clip.
 
:Depending on the color format, the image resolution can be changed.
 
:Depending on the color format, the image resolution can be changed.
 +
</div>
 +
  
 
== Examples ==
 
== Examples ==
 +
<div style="max-width:62em" >
 
* Blur the U chroma channel
 
* Blur the U chroma channel
<div {{BoxWidthIndent|28|1}} >
+
<div {{BoxWidthIndent|28|2}} >
 
  video = [[ColorBars]](512, 512).[[ConvertToYV12]]
 
  video = [[ColorBars]](512, 512).[[ConvertToYV12]]
 
  u_chroma = '''UToY'''(video).[[Blur]](1.5)
 
  u_chroma = '''UToY'''(video).[[Blur]](1.5)
 
  '''YToUV'''(u_chroma, video.'''VToY''')
 
  '''YToUV'''(u_chroma, video.'''VToY''')
 
  [[MergeLuma]](video)
 
  [[MergeLuma]](video)
 +
</div>
 +
 +
 +
* Show ''Y'', ''U'' and ''V'' channels stacked for illustration purposes.
 +
** Note that with a [[YV12]] source (like the one below), the ''U'' and ''V'' images will be half the size compared to the ''Y'' image.
 +
** In the ''U'' and ''V'' images, gray will be at 128 and colors will be either brighter or darker.
 +
{{HalfBreak}}
 +
:[[File:SwapEx-Sintel9150.jpg]]
 +
<div {{BoxWidthIndent|48|2}} >
 +
[[StackVertical]](
 +
\  [[Subtitle]]("YV12 original", align=2),
 +
\  [[ConvertToY8]].[[ConvertToYV12]].[[Subtitle]]("ConvertToY8", align=2),
 +
\  [[StackHorizontal]](
 +
\      '''UtoY'''.Subtitle("UtoY", align=2),
 +
\      '''VtoY'''.Subtitle("VtoY", align=2)
 +
\  )
 +
\ )
 +
</div>
 
</div>
 
</div>
  

Revision as of 02:13, 25 March 2016

Swaps chroma channels in YUV clips.

Contents


Syntax and Parameters

SwapUV

SwapUV(clip clip)

Swaps U and V (chroma) channels. Corrects certain decoding errors – faces blue instead of red, etc.


UToY, VToY

UToY(clip clip)
VToY(clip clip)

Copies U or V chroma plane to the Y luma plane.
All color (chroma) information is removed, so the image is now greyscale.
Depending on the color format, the image resolution can be changed – i.e.,
with a YV24 source, UToY is the same width and height as clip, but
with a YV12 source, UToY is half clip's width and height.


UToY8, VToY8

UToY8(clip clip)
VToY8(clip clip)

Shorthand for UToY.ConvertToY8 and VToY.ConvertToY8, but faster.


YToUV

YToUV(clip clipU, clip clipV [, clip clipY ] )

Copies the Y (luma channel) of clipU to the U channel of the output clip and the Y (luma channel) of clipV to the V channel of the output clip.
If clipY is given, copies the Y (luma channel) of clipY to the Y channel of the output clip.
Depending on the color format, the image resolution can be changed.


Examples

  • Blur the U chroma channel
video = ColorBars(512, 512).ConvertToYV12
u_chroma = UToY(video).Blur(1.5)
YToUV(u_chroma, video.VToY)
MergeLuma(video)


  • Show Y, U and V channels stacked for illustration purposes.
    • Note that with a YV12 source (like the one below), the U and V images will be half the size compared to the Y image.
    • In the U and V images, gray will be at 128 and colors will be either brighter or darker.
 
SwapEx-Sintel9150.jpg
StackVertical(
\  Subtitle("YV12 original", align=2),
\  ConvertToY8.ConvertToYV12.Subtitle("ConvertToY8", align=2),
\  StackHorizontal(
\       UtoY.Subtitle("UtoY", align=2), 
\       VtoY.Subtitle("VtoY", align=2)
\  )
\ )

Changes

v2.60 Added UToY8, VToY8.
v2.60 Added new color formats Y8, YV411, YV16 and YV24.
Personal tools