Re: FxPlug vs Core Image vs Core Video filters question
Re: FxPlug vs Core Image vs Core Video filters question
- Subject: Re: FxPlug vs Core Image vs Core Video filters question
- From: Paul Schneider <email@hidden>
- Date: Mon, 28 Jan 2008 11:12:16 -0500
Hi, Brian,
I agree, it is confusing.
FxPlug and CoreImage serve similar roles; they set things up for your
image processing code. They both sit on top of OpenGL; they are not
really related to each other.
It would be possible to write an FxPlug filter that was implemented
using a CIFilter; you'd simply create a CIContext for the destination
buffer, and CIImages out of the input buffers. Our example FxPlugs
are a bit lower-level, and run GL fragment programs directly on the
supplied GL textures. This is pretty much what CI does as well (a
CIKernel is basically a GL fragment program).
Why do we have two separate things? FxPlug and CoreImage have
slightly different goals. For example, one of the main features of CI
is that it will run your shader in software if the graphics card
doesn't support fragment programs. The Pro Apps have higher system
requirements than Mac OS X, so we don't need that fallback. FxPlug
also has some features (particularly related to sampling images at
various times) that CI lacks.
Which technology should you use? It depends on what you plan to
deliver. FxPlug is the image processing API for Final Cut Studio, so
if you want to write a plugin for Final Cut and/or Motion, write an
FxPlug. If you want to write a plugin for other systems (like Quartz
Composer, or Pixelmator), write a CIFilter. If you want to deliver
your plugin to everyone, you'll have to separate your algorithm from
the plugin packaging, and make both an FxPlug and a CI wrapper.
- Paul
On Jan 27, 2008, at 4:38 PM, Brian wrote:
Sorry for interjecting another newbie question.
As a lone newbie, I'm grappling through a lot of documentation.
But, it's a bit confusing to grasp the relationships,
and (dis)advantages of writing a FxPlugin,
versus a filter for Core Image or Core Video.
Is there a relationship between these,
or are they completely separate technologies?
Do people writing image processing code for
video & film, usually just write FxPlugins
for the pro apps? Or do you somehow write
code that can be used as both FxPlugins
and Core Image and/or Core Video filters?
-- Brian
_______________________________________________
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