Mac Developer Library

Developer

FxPlug Framework Reference

FxPlug SDK Reference

Protocols   Classes   Other Reference  

Developed by Apple’s Professional Applications group, the FxPlug SDK is a compact yet powerful image processing plug-in architecture that lets you create new effects for Final Cut Pro, Final Cut Express, and Motion.

Leveraging technologies such as OpenGL, Quartz, Quartz Composer, and Core Image, you can develop unique plug-ins that include on-screen controls and custom user interface elements—all running seamlessly in the host application. FxPlug supports both hardware-accelerated and CPU-based effects.

To write a plug-in for Motion, Final Cut, or Final Cut Express you use the FxPlug SDK. The bulk of this SDK consists of Objective-C protocol definitions. You create a plug-in by writing code in Objective-C or Objective-C++ that conforms to these protocols. That is, you implement the methods declared by the protocols. The host application provides the capabilities in all the protocols that have the API suffix. Your plug-in is responsible for implementing the other protocols.

Protocols

Fx3DAPI

Document that defines the methods the host application provides to get information about the 3D environment.

Fx3DAPI_v2

Document that defines the methods the host application provides to get information about the 3D environment.

FxBaseEffect

Document that describes the methods that all Final Cut Pro X plug-ins must to implement.

FxCustomParameterActionAPI

Document that defines the methods Final Cut Pro X provides to support a custom parameter view

FxCustomParameterInterpolation

Document that defines the methods supported by Final Cut Pro X to support a custom parameter view (Version 2).

FxCustomParameterViewHost

Document that efines the interface a Final Cut Pro X plug-in implements to present a custom user parameters interface.

FxDynamicParameterAPI

Document that describes how Final Cut Pro X plug-ins create parameters dynamically.

FxFilter

Document that defines the methods a Final Cut Pro X filter plug-in must implement to render output.

FxGenerator

Document that defines the methods a Final Cut Pro X generator plug-in must implement to render output.

FxHostResourcesAPI

Document that defines methods that Final Cut Pro X implements to allocate and track resources.

FxHostResourcesClient

Document that defines methods Final Cut Pro X plug-ins implement to free memory in low-memory situations.

FxKeyframeAPI

Document that defines Final Cut Pro X methods set and retrieve keyframe parameter values.

FxLightingAPI

Document that defines the interface that allows a plug-in to get information about lighting in a Motion project.

FxOnScreenControl

Document that defines the methods a Final Cut Pro X plug-in implements to create on-screen parameters.

FxOnScreenControl_v2

Document that defines the methods a Final Cut Pro X plug-in implements to create on-screen parameters (Version 2).

FxOnScreenControlAPI

Document that defines the methods Final Cut Pro X uses to draw controls directly on the canvas.

FxOnScreenControlAPI_v2

New document that defines the methods Final Cut Pro X uses to draw controls directly on the canvas (Version 2).

FxOptionalParameterCreationAPI

Document that defines the methods implemented by Final Cut Pro X for creating parameters of optional types.

FxOptionalParameterRetrievalAPI

Document that defines the methods Final Cut Pro X provides to retrieve parameter values.

FxOptionalParameterSettingAPI

Document that defines the methods that Final Cut Pro X provides to set parameter values.

FxParameterCreationAPI

Document that defines the methods provided by Final Cut Pro X to create parameters.

FxParameterCreationAPI_v2

Document that defines the methods provided by Final Cut Pro X to create parameters (Version 2).

FxParameterCreationAPI_v3

Document that defines the methods provided by Final Cut Pro X to create parameters (Version 3).

FxParameterRetrievalAPI

Document that defines the methods Final Cut Pro X provides to retrieve plug-in parameter values.

FxParameterRetrievalAPI_v2

Document that defines the methods Final Cut Pro X provides to retrieve plug-in parameter values (Version 2).

FxParameterRetrievalAPI_v3

Document that defines the methods Final Cut Pro X provides to retrieve plug-in parameter values (Version 3).

FxParameterSettingAPI

Document that defines the methods Final Cut Pro X provides to set a plug-in’s parameter values.

FxParameterSettingAPI_v2

Document that defines the methods Final Cut Pro X provides to set a plug-in’s parameter values (Version 2).

FxParameterSettingAPI_v3

Document that defines the methods Final Cut Pro X provides to set a plug-in’s parameter values.

FxPathAPI

Document that descries the interface Final Cut Pro X implements to allow for retrieving user paths, shapes, and masks.

FxProgressAPI

Document that defines the methods Final Cut Pro X provides for a plug-in to report progress and allow cancellation.

FxRenderNotificationAPI

Document that defines a Final Cut Pro X method that allows forced plug-in re-rendering.

FxTemporalImageAPI

Document that defines the methods Final Cut Pro X provides to access an input image at a specific time.

FxTemporalTransitionImageAPI

Document that defines the methods Final Cut Pro X provides to access an transition input image at a specific time.

FxTimingAPI

Document that defines the Final Cut Pro X methods allowing timing property queries of its media and parameter contents.

FxTimingAPI_v2

Document that defines the Final Cut Pro X methods allowing timing property queries of its media and parameters (Version 2).

FxTransition

Document that defines the methods a Final Cut Pro X transition plug-in must implement.

FxUndoAPI

Document that defines the methods allowing Final Cut Pro X plug-ins to manage the undo queue.

FxVersioningAPI

Document that defines a means for Final Cut Pro X to identify the original plug-in version for a project.

FxWindowAPI

Document that defines how a Final Cut Pro X plug-in can create and destroy a window.

FxWindowHost

Document that describes the methods a Final Cut Pro X plug-in must implement to host windows in the application.

Classes

FxBitmap

Document that defines the class that represents a Final Cut Pro X image in main memory.

FxHostCapabilities

Document that defines interface a Final Cut Pro X plug-in uses to interrogate the host application’s environment.

FxImage

Document that describes the Final Cut Pro X image format representing images stored either in RAM or the video card.

FxMatrix44

Document that describes a Final Cut Pro X 4x4 matrix and transformations.

FxTexture

Document that defines the Final Cut Pro X methods allowing hardware-accelerated rendering of images.

Other Reference

FxPlug Constants Reference

FxPlug Data Types Reference