Re: YCbCr continued
site_archiver@lists.apple.com Delivered-To: pro-apps-dev@lists.apple.com Brad Wright On Aug 5, 2008, at 9:15 AM, Darrin Cardani <dcardani@apple.com> wrote: On Aug 4, 2008, at 3:23 PM, Brad Wright wrote: Hi Pro Apps Team: Zero Saturation point 112 Maximum Cb and Cr value of 255 112/255 = .43921569 approximately .439 Darrin -- Darrin Cardani dcardani@apple.com _______________________________________________ Do not post admin requests to the list. They will be ignored. Pro-apps-dev mailing list (Pro-apps-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/pro-apps-dev/site_archiver%40lists.ap... 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. 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: 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? This email sent to site_archiver@lists.apple.com
participants (1)
-
Brad Wright