Re: YCbCr continued
Re: YCbCr continued
- Subject: Re: YCbCr continued
- From: Paul Schneider <email@hidden>
- Date: Tue, 5 Aug 2008 11:56:10 -0500
The only way I could see this happens is if core image is somehow
apply a color transform before my shader is activated and the
reversing it back out before it gets displayed.
That's typically what happens. CI has a processing colorspace and an
output colorspace. Your inputs are converted to the processing space,
the kernels are run, and then the result is converted to the output
space. Make sure that all the spaces are tagged the same to avoid
conversion.
Also, you probably don't want to use the "DisplayRGB" colorspace,
since that is calibrated to your monitor. GenericRGB is probably more
what you want.
- Paul
On Aug 5, 2008, at 11:50 AM, Brad Wright wrote:
I'll try that. I don't know how to work with ARB shaders, but I'll
see what I can do.
I think the color is set up correctly, as there is no shift in color
when I write the ciimage which I took from the FxTexture that was
passed in to the pluggin. I tried creating a ciimage from retrieved
YUV data from the same frame, and I didn't notice any color shift.
Is there any known problems with using CIImages that could cause a
color shift? The only way I could see this happens is if core image
is somehow apply a color transform before my shader is activated and
the reversing it back out before it gets displayed.
Brad Wright
On Aug 5, 2008, at 9:15 AM, Darrin Cardani <email@hidden> wrote:
On Aug 4, 2008, at 3:23 PM, Brad Wright wrote:
Hi Pro Apps Team:
Here's what I did. I created a core image filter that generates a
color that fills the entire screen. All this filter does is
display what ever values you feed into it for the vec4 color that
is returned (pre-multiplied of course). I then used the built in
Final Cut Scopes to read the color values back. It appears that
the color neutral point is when both U and V are at 0.42 - 0.44
depending on the value for Y. At least that's what the Final Cut
Scopes are saying. I looked at both the RGB parade and the
Vectorscope to verify that these values line up. I'm apply this
filter directly over a video frame from an FxTexture mapped into a
CIImage. I've been through the documentation and I can't figure
out how Final Cut is mapping these values. The U and V values
should stay color neutral while the Y value varies up or down.
I'm not seeing that happening. It appears the Hue is being
shifted around as the Y varies. I'm not sure how the U and V
values arrive at between 0.42 and 0.44.
The best I can figure is that Cb and Cr are mapped at between 0 -
224 without the offset that the documentation says there is.
If I assume that the color neutral point is .42-0.44 in float
point, then I can get this value by mapping:
Zero Saturation point 112
Maximum Cb and Cr value of 255
112/255 = .43921569
approximately .439
Does anyone know why this would happen?
Brad,
Is it possible that you're not setting up Core Image's color
space correctly? What happens when you try the same thing in a
straight OpenGL ARB Fragment program with no Core Image involved?
Do you see the same problems?
Darrin
--
Darrin Cardani
email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Pro-apps-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Pro-apps-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden