Hello.

I am attempting to understand some performance behavior I am seeing in my application. For starters my application :

1) uses display link for my main rendering timer
2) uses CVBufferRefs as input keys for images of type QCImage for speed (to lessen any conversion over head) (I use this with quicktime playback). 3) uses shared openGL contexts to display multiple views of my main output (for preview windows, my app is a live video tool) 4) uses Quartz Composer patches with the Core Image Kernel language patches for most of effects/compositing.


My understanding is that points 1 and 2 are best practices for performance. Point 3 is necessary should I want to use my CVOpenGLBuffer/texture to be displayed elsewhere (ie: another open gl context/window/view), now, Point 4 is where my knowledge is somewhat lacking.

I am seeing what is under my impression very poor framerates when doing simple compositing between two QT movies. For example, mixing two 24fps photo jpeg movies that are 854x480 pixels :

in my app : ~ 30fps
In QC Editor ~ 30fps

Within another environment, with the exact same CIKernel code (but within a GLSL shader) I get a solid 60fps. (the environment being Cycling 74's Jitter ).

However, if I enable the private uncorrectedCoreImage color option within the QC editor, I can also get 60FPS.

My questions are,

1) how can I procedurally disable color correction for Core Image within my App? I see nothing obvious in the developer documentation for this, but could be missing something conceptually... or just have missed it :)

2) is there meaningful overhead by using a Quartz Composer patch with a CIKernel patch in it, rather than biting the bullet and compiling my CIKernels as Core Image Units and loading them / using them are Core Image units natively? (IE, skip the whole QC patch step, just load a CIUnit and use it?)

3) should I be expecting similar performance with Core Image for video processing as I get with GLSL shaders?

I appreciate any insight, Im a bit confused and disappointed by my apps performance, especially when trying to follow the best practices and not seeing any real boost.

Thanks in advance,

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Quartzcomposer-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to