Log in

View Full Version : colorspace problem


feisty2
12th January 2013, 13:48
I wanna adjust the color of some vids in After Effects
since I have to edit it in AE,so the colorspace will become RGB32 and the original clips are yv12,so when I finish editing video in AE and convert it to yv12 again,there'll certainly cause quality loss
any way to make colorspace conversion like yv12-rgb32-yv12 lossless?
I found a old post here and get these codes
ConvertToYV24(interlaced=true, chromaresample="point")
MergeChroma(PointResize(width, height, 0, 2))
ConvertToRGB32()
... # filtering in RGB32
ConvertToYV12(interlaced=true, chromaresample="point")
but it doesn't work very well,sometimes chroma look "spilling out" and I don't know why
any ideas? :thanks:

Gavino
12th January 2013, 17:55
I found a old post here and get these codes
ConvertToYV24(interlaced=true, chromaresample="point")
MergeChroma(PointResize(width, height, 0, 2))
ConvertToRGB32()
... # filtering in RGB32
ConvertToYV12(interlaced=true, chromaresample="point")
but it doesn't work very well,sometimes chroma look "spilling out"
I recognise that code from this thread.
But is your source really interlaced?

If not, you should instead use the code from post #19 of the thread:
ConvertToYV24(chromaresample="point")
MergeChroma(PointResize(width, height, 0, 1))
ConvertToRGB32()
... # filtering in RGB32
ConvertToYV12(chromaresample="point")

feisty2
13th January 2013, 02:19
it's telecined, the clips are from dvd,so is it interlaced type?

Asmodian
13th January 2013, 02:36
Do you want to feed RGB32 out of Avisynth to AE?

If you do want RGB32 leave out the final ConvertToYV12.
ConvertToYV24(interlaced=true, chromaresample="point")
MergeChroma(PointResize(width, height, 0, 2))
ConvertToRGB32()

If you can I think it would be better to do IVTC before any color space conversions.

poisondeathray
13th January 2013, 02:40
it's telecined, the clips are from dvd,so is it interlaced type?

DVD can be hard telecine (encoded interlaced) or soft telecine (progressive encoded with flags)


Eitherway I would IVTC it (so it's progressive 24p, and use the progressive version of the script) before importing into AE, and use the reverse script after

feisty2
13th January 2013, 09:09
I already did ivtc before colorspace conversion
what to do with colorspace is right?
ConvertToYV24(chromaresample="point")
MergeChroma(PointResize(width, height, 0, 1))
ConvertToRGB32()
... # filtering in RGB32
ConvertToYV12(chromaresample="point")

is this right?

Asmodian
13th January 2013, 09:28
What are you doing? Let us know your process step by step.

If you are loading a script in After Effects just use:
ConvertToYV24(chromaresample="point")
MergeChroma(PointResize(width, height, 0, 1))
ConvertToRGB32()

Think of After Effects as this line:
... # filtering in RGB32

Use this on the output from After Effects (save as RGB32 in AE):
ConvertToYV12(chromaresample="point")

I already did ivtc before colorspace conversion
Once you do IVTC the video is progressive.

feisty2
13th January 2013, 09:33
here the original clip (ivtc only,zoomed to 1600%)
http://thumbnails108.imagebam.com/23186/141e94231858092.jpg (http://www.imagebam.com/image/141e94231858092)
here's the picture after using
ConvertToYV24(chromaresample="point")
MergeChroma(PointResize(width, height, 0, 1))
ConvertToRGB32()
... # filtering in RGB32
ConvertToYV12(chromaresample="point")
http://thumbnails106.imagebam.com/23186/29131a231858107.jpg (http://www.imagebam.com/image/29131a231858107)
something's wrong with chroma,the line I circled out seems "blue"
both ConvertToYV24(interlaced=true, chromaresample="point")
MergeChroma(PointResize(width, height, 0, 2))
ConvertToRGB32()
... # filtering in RGB32
ConvertToYV12(chromaresample="point")

and ConvertToYV24(chromaresample="point")
MergeChroma(PointResize(width, height, 0, 1))
ConvertToRGB32()
... # filtering in RGB32
ConvertToYV12(chromaresample="point")
give me this "blue line" thing :(