MergeRGB

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
m (formatting)
m (note AVS+ differences)
Line 11: Line 11:
 
{{FuncArg|cliprR}}, {{FuncArg|clipG}} and {{FuncArg|clipB}} provide the ''R'', ''G'' and ''B'' data respectively to merge into the output clip. For [[YUV]] format clips, the data is taken from the ''Y'' (luma) channel. For [[RGB]] format clips, the data is taken from the respective source channel—''R'' to ''R'', ''G'' to ''G'', ''B'' to ''B''. The unused chroma or color channels of the input clips are ignored.
 
{{FuncArg|cliprR}}, {{FuncArg|clipG}} and {{FuncArg|clipB}} provide the ''R'', ''G'' and ''B'' data respectively to merge into the output clip. For [[YUV]] format clips, the data is taken from the ''Y'' (luma) channel. For [[RGB]] format clips, the data is taken from the respective source channel—''R'' to ''R'', ''G'' to ''G'', ''B'' to ''B''. The unused chroma or color channels of the input clips are ignored.
  
All YUV luma pixel data is assumed to be pc-range (0..255); there is no tv-range (16..235) scaling. Chroma data from YUV clips is ignored. Input clips may be a mixture of all formats. [[YV12]] is the most efficient format for transporting single channels thru any required filter chains.
+
All YUV luma pixel data is assumed to be pc-range (0{{D}}-255{{D}}); there is no tv-range (16{{D}}-235{{D}}) scaling. Chroma data from YUV clips is ignored. Input clips may be a mixture of all formats. [[YV12]] is the most efficient format for transporting single channels thru any required filter chains.
  
{{FuncArg|pixel_type}} (default "RGB32", optionally "RGB24") specifies the output pixel format.
+
{{FuncArg|pixel_type}} (default "RGB32", optionally "RGB24") specifies the output pixel format.<br>
 +
{{AvsPluscon}} also supports "RGB48", "RGB64"
  
 
Audio, [[Clip_properties|FrameRate]] and [[Clip_properties|FrameCount]] are taken from the first clip.
 
Audio, [[Clip_properties|FrameRate]] and [[Clip_properties|FrameCount]] are taken from the first clip.

Revision as of 23:03, 28 April 2017

MergeARGB(clip clipA, clip clipR, clip clipG, clip clipB)
MergeRGB(clip clipR, clip clipG, clip clipB [, string pixel_type ] )

Merge the alpha (transparency) and color channels from the source video clips into the output video clip.

clipA provides the alpha data to merge into the output clip. For a YUV format clip, the data is taken from the Y (luma) channel. For an RGB32 format clip, the data is taken from the A (alpha) channel. RGB24 clips cannot be used.

cliprR, clipG and clipB provide the R, G and B data respectively to merge into the output clip. For YUV format clips, the data is taken from the Y (luma) channel. For RGB format clips, the data is taken from the respective source channel—R to R, G to G, B to B. The unused chroma or color channels of the input clips are ignored.

All YUV luma pixel data is assumed to be pc-range (0d-255d); there is no tv-range (16d-235d) scaling. Chroma data from YUV clips is ignored. Input clips may be a mixture of all formats. YV12 is the most efficient format for transporting single channels thru any required filter chains.

pixel_type (default "RGB32", optionally "RGB24") specifies the output pixel format.
AVS+ also supports "RGB48", "RGB64"

Audio, FrameRate and FrameCount are taken from the first clip.

Examples

# Blur the Green channel only.
MPEG2Source("main.d2v")
ConvertToRGB24()
MergeRGB(Last, Blur(0.5), Last)
# Swap the red and blue channels;
# load the alpha from a second source.
vid1 = AviSource("main.avi")
vid2 = AviSource("alpha.avi")
MergeARGB(
\    vid2, 
\    vid1.ShowBlue("YV12"), 
\    vid1, 
\    vid1.ShowRed("YV12")
\ )
AudioDub(vid1)

Changelog

v2.56 Initial release.
Personal tools