FxTemplates In Depth

FxTemplates UI

FxTemplates UI

The FxTemplates development UI follows a three-column layout. The first column lists groups and templates included in the product. Templates are sorted by theme first, and then by name. This follows the same sorting order of the Effect Browser in Final Cut Pro:

Embedded Motion Templates

Embedded Motion Templates

Templates that have been declared obsolete will appear grayed-out. The obsolete status of a Motion Template is discussed in detail in the next section.

Template Properties

Every visual effect for Final Cut Pro is built through Motion Templates, a technology based on Motion’s project file format and rendering engine.

Effects created with Motion Templates can be one of four types: Effects, Generators, Transitions or Titles.

Note that Apple uses the term effect both to refer to visual effects in general, and to describe filters. In the context of their professional video apps, effects describes any add-on designed to visually alter your content and to filters specifically, i.e. effects that take a single input to produce a single output.

When an effect is selected in the first column, the UI in the second column lets you inspect and change properties of the effect. FxFactory gives you access to information and features related to a Motion Template through the following user interface:

Template options

Template options

The Edit in Motion button opens the Motion Template in Motion, and it is likely the most common activity you will be doing with Motion Templates included with your project. There are a few things to keep in mind:

  • When you click that button, FxFactory does not open the original Motion Template embedded in your product. It creates and opens a copy. This allows you to quickly experiment with a Motion Template, and worry about applying or discarding any changes later.
  • When you are done editing the Motion Template in Motion, close the document and switch back to FxFactory. You will have the option of importing any changes you just made, or ignoring them. Either way, the temporary copy of your effect is discarded automatically by FxFactory.
  • Some developers like to check their work in Final Cut Pro while editing a Motion Template in Motion. This is also supported by FxFactory. You will notice that the temporary copy of your effect is itself listed under a temporary group. For example, if the original effect was listed under the "ACME Tools" group, you will find its temporary copy listed under the "ACME Tools (Editing)" group. This approach allows you to run and compare both the shipping version of the effect, and the one you are currently editing in Motion.
The Import button lets you replace the Motion Template embedded in the product with a new template loaded from disk. Make sure that you import any media as needed, when doing so.

The Export button lets you create a copy of your effect, along with any Media it references, to a folder on disk. By default, FxFactory will prompt you to export a copy of your effect to a location accessible by Final Cut Pro, but this is only a default behavior, not a requirement. Developers may very different reasons for wanting to export a template: testing it on a different system, editing its XML through an external app, etc.

Below the three buttons mentioned above, FxFactory shows the size of the Motion project, the version of Motion that was used to save the Motion Template, as well as the OZML version. This last piece of information is extremely important. The OZML version dictates what versions of Final Cut Pro your effect is ultimately compatible with. Every time you edit or import a Motion Template with FxFactory, it checks the OZML version against your product requirements. For example. If FxFactory determines that the OZML version of your effect requires at least Final Cut Pro 10.6 it will update product requirements accordingly.

The effect Thumbnail is used both by FxFactory, when the user is browsing the product, and by Final Cut Pro, in its Effect Browser. It is recommended that you create a high-quality thumbnail rather than use the generic thumbnail generated by Motion when the template is saved to disk. The thumbnail should quickly and uniquely identify your effect and its function. Thumbnails should have a 16:9 aspect ratio. FxFactory can help you convert any graphic into its most efficient format for thumbnails through a feature available in the Assets section. Click the thumbnail graphic in the lower-right corner of the "Assets" section to apply any required size and format conversion to any graphic you imported.

The Name of an effect determines how it appears both in FxFactory and in Final Cut Pro, in the effect browser. You can change the name of an effect at any time. Doing so does not pose any compatibility issues for users. This feature is exclusive to Motion Templates "managed" by FxFactory. User-created templates need to preserve their name to preserve Final Cut Pro’s ability to link effects used on a timeline to their location on disk.

The effect’s Description is displayed by FxFactory in its tooltip. Tooltips appear when the user is browsing your product in FxFactory, and hovers their mouse over the effect’s thumbnail.

The effect’s Version is for development-purposes only. The effect’s version number should not be confused with the product’s version. The product version does have implications to the user. It is displayed in our UI and it governs how manual and automatic updates to your product are applied. The effect’s version number is never displayed to the user. Over the lifetime of your product, you are likely to create new versions of an effect, to fix bugs and/or add features. Assigning a version number to each revision allows you to maintain an unequivocal chronology of your changes.

The This version is obsolete checkbox allows you to declare an effect obsolete, which hides it from the Effect Browser. Even though the effect may no longer be accessible under the Effect Browser, it is still loaded and used whenever the user opens a project that references the effect. This behavior is similar to planned obsolesce of native plug-ins. The obsolete flag is supported by any recent version of Final Cut Pro.

If you develop multiple versions of the same effect, only the most recent version should be visible to the user. All previous versions should be declared obsolete by turning this option on.

The UUID of an effect uniquely identifies the effect. It is fundamental to Final Cut Pro’s ability in finding and loading your effect without ambiguity.

The UUID of an effect should rarely (if ever) need to be changed. Doing so changes the effect’s installation path, and therefore compromises Final Cut Pro’s ability to locate and load the effect when existing projects are opened.

The Plug-in UUID text field allows you to link the effect to a native plug-in. This option only affects products that bundle together native plug-ins and Motion Templates. Linking a Motion Template to a native plug-in usually makes sense when a 1:1 correspondence exists between native plug-ins and Motion Templates included with the product. Photo Montage would be an example for such a product: an equal number of native plug-ins and corresponding Motion Templates.

FxFactory takes advantage of this link between a Motion Template and the native plug-in it "wraps". It is common for developers to provide:

  • One video tutorial shot in Premiere Pro or After Effects, for the native plug-in hosted by the FxPack.
  • One video tutorial shot in Final Cut Pro, for the Motion Template in the FxTemplates project.
Provided that the Motion Template is linked to its native plug-in, when FxFactory provides on-screen UI in Final Cut Pro’s Canvas for the native plug-in wrapped inside the Motion Template, it will display the video tutorial shot in Final Cut Pro rather than the one originally associated with the native plug-in.

Next to the Plug-in UUID text field is the Strip Metadata button. This button is only available when a native plug-in UUID has been supplied. Clicking this button will cause FxFactory to process the Motion Template and remove any metadata associated with parameters that belong to the native plugin. Why is this desirable or even necessary? By default, when you add a native plugin to a project, Motion makes a copy of all metadata relative to a parameter, including its initial value and the value you have assigned in the project (which may be different). Other than the redundant data saved in the template, this behavior may appear innocuous at first sight. Instead, it poses challenges when the developer makes adjustments to the native plug-in. These changes are not reflected in Final Cut Pro because the Motion Template still contains the previous values, those copied to the XML when the template was first created. With that in mind, the Strip Metadata button will remove default and assigned values from all parameters, assuming that they have not been changed intentionally. This should ensure that no matter what changes you make to the native plug-in, they will be reflected in Final Cut Pro.

The Theme allows you to categorize the effect within a specific theme. Themes are displayed by the Effect Browser and they are used for the purpose of sorting, finding and arranging your effects. The theme is not the same as the effect’s group, though it is possible to assign the same text to both. Each effect must necessarily be located within a group, while the theme is optional. If your product contains many effects under the same group, specifying a theme will help group together effects that have something in common. The theme is both an additional method to force a hierarchy in your effects, and a convenient way for users to search for all effects that match a given theme name. You can change an effect’s theme without any risk of breaking project compatibility. The theme name does not have any bearing on the effect’s installation path. The theme name is stored inside the Motion Template’s XML document. FxFactory simply provides a faster, more user-friendly way to edit that text.

The Visibility: Hide from users when browsing product in FxFactory checkbox allows you to hide the effect when users are browsing the product inside the FxFactory app. The effect will remain visible in the Effect Browser in Final Cut Pro. This option exists to satisfy a very specific problem: if you include multiple version of the same effect (for example, one as a Title and a second one as a Generator) you may want the user to see only one thumbnail in our app, rather than two bearing the same name and same preview image.

The Color Processing option controls the behavior of Final Cut Pro when applying the effect to wide color content. The choices available map directly to those advertised inside Motion:

  • Standard: your template was designed to work with SDR content only.
  • Wide Gamut: your template was designed to process HDR content at its native depth. This option is also recommended when wrapping native plug-ins based on FxCore.
  • Automatic: your template is dynamically adapted to its environment, as described in this document: Manage automatic color processing in Motion
Enable the Override Color Space Used by Final Cut Pro option controls whether your template’s declared color processing option takes precedence over the current timeline settings. This option has been deprecated, and only works when using Standard or Wide Gamut color processing. It has been superseded by the Automatic option.

The Designed for 4K option should be enabled to make sure your templates remain searchable when users have enabled the 4K search criteria in the Final Cut Pro effects browser. It is best to include the appropriate assets and snapshots in your Motion Template to support the UHD (16:9) and Digital Cinema 4K (19:10 aspect ratio). All Motion Templates will, by default, support only the 16:9 aspect ratio. If you want to provide support for other aspect ratios, such as 4:3 or 19:10, this must be done by adding appropriate snapshots to the project. The Digital Cinema 4K aspect ratio is treated a little differently by Final Cut Pro in that the effect will be listed as "4K capable" in the Effect Browser only if you provide the appropriate snapshot and you enable this option.

The HDR White Level slider maps to the equivalent option in Motion, and it is meaningful when the template is set to Automatic color processing. This value determines how SDR content in your template is adapted to HDR timelines, or how HDR content in the template is adapted to SDR timelines.

The Help popup menu lets you specify a URL, Asset or YouTube® Video to be opened when the user requests help for your effect. When one of those options has been specified, FxFactory will display a "Help" button it is own UI, and as an on-screen control in Final Cut Pro. Please keep in mind that URLs cannot be entered in their absolute form. The URL you enter should to be relative to FxFactory’s website. Do not enter something like this:

…/help/http://www.apple.com

Instead, if your product’s name is "Mellow Yellow" and the effect name is "Yellow Keyer", you will likely use one of the following relative URLs:

.../help/mellowyellow
.../help/mellowyellow/yellowkeyer

The appropriate choice depends on whether you provide a single help page for all effects in the product, or individual help pages for each effect. The use of a relative URL allows us to use redirectors on our website. This reduces the possibility that we end up with broken links to help pages as they are moved from one location to another. This is likely to happen every time you redesign your website.

When you choose to link the template to a YouTube® video, remember to enter only the YouTube® Video ID, usually the last component in URL to the video as it appears on youtube.com. FxFactory is able to play YouTube® videos in-app and sometimes even within host applications.

The Button Title text field lets you customize the name of the button that allows users to access any help resource associated with the template. FxFactory uses the custom button title when displaying product contents in its own app, and in Final Cut Pro’s Canvas.

The Tutorial popup menu has similar choices and considerations as the Help section above it.

The Button Title text field lets you customize the name of the button that allows users to access any tutorial associated with the template. FxFactory uses the custom button title when displaying product contents in its own app, and in Final Cut Pro’s Canvas.

When the Help option is set to Open Asset, enable the Copy asset to another location before opening to force the user to select a location where the asset is saved to prior to being opened with the designated application:

Open Asset options

Open Asset options

This option is especially important when using the Help button to embed sample content for the user, such as Final Cut Pro libraries. Asking the user to save the asset to another location on disk ensures that Final Cut Pro will have read and write access to the Library. This option is not needed when your asset is guaranteed to be accessed in read-only mode, such as when providing sample projects as FCPXML files. When Final Cut Pro opens one such a file, it has no need to modify it. The FCPXML file is read and converted to native project data when imported to a Library.

Media

The Media section lists any references to external media that were discovered in your Motion Template. Any time FxFactory installs the Motion Template on a new system, any Media referenced in this section is automatically copied to the "Media" folder, on disk. Please keep in mind that Media listed in this section is not automatically managed by FxFactory or by Motion. If you add new files to the Media section in Motion, you must make sure that they are either imported, or manually added, to this section as well.

Media Consolidation

FxFactory does provide one key advantage over the naive implementation of Media by Motion Templates. If multiple effects within your product reference an identical file FxFactory allows you to embed only a single copy of that file into your product. FxFactory considers identical any two files having the same name and contents. Storing a single copy of a file used by multiple effects can lead to considerable space-savings on disk, and faster download and installation of your product. FxFactory can help you detect and consolidate references to common Media files. Switch to the "Assets" section in the third-column, and click the "bulldozer" icon in the bottom-right corner of the window in order to begin the consolidation process.