cp.apple.finalcutpro.plugins

Scans an entire system for Final Cut Pro Effects, Generators, Titles & Transitions.

Usage:

    require("cp.apple.finalcutpro"):plugins():scan()

Submodules


API Overview

Constants - Useful values which cannot be changed

  • types

Functions - API calls offered directly by the extension

  • clearCaches
  • new
  • scan
  • scanAppEffectsPresets
  • scanned
  • scanSystemAudioUnits
  • scanUserColorPresets
  • scanUserEffectsPresets

Methods - API calls which can only be made on an object returned by a constructor

  • app
  • audioEffects
  • effectBundleStrings
  • effectStrings
  • generators
  • ofType
  • registerPlugin
  • reset
  • scanAll
  • scanAppAudioEffectBundles
  • scanAppBuiltInPlugins
  • scanAppEdelEffects
  • scanAppMotionTemplates
  • scanPluginCategoryDirectory
  • scanPluginsDirectory
  • scanPluginThemeDirectory
  • scanSystemMotionTemplates
  • scanUserMotionTemplates
  • titles
  • transitions
  • translateEffectBundle
  • unwatch
  • videoEffects
  • watch

API Documentation

Constants

types

   
Signature cp.apple.finalcutpro.plugins.types -> table
Type Constant
Description Table of the different audio/video/transition/generator types.
Notes None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 255

Functions

clearCaches

   
Signature cp.apple.finalcutpro.plugins.clearCaches() -> boolean
Type Function
Description Clears any local caches created for tracking the plugins.
Parameters
  • None
Returns
  • true if the caches have been cleared successfully.
Notes
  • Does not uninstall any of the actual plugins.
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1499

new

   
Signature cp.apple.finalcutpro.plugins.new(fcp) -> plugins object
Type Function
Description Creates a new Plugins Object.
Parameters
  • fcp - The cp.apple.finalcutpro object
Returns
  • The plugins object
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1828

scan

   
Signature cp.apple.finalcutpro.plugins:scan() -> none
Type Function
Description Scans Final Cut Pro for Effects, Transitions, Generators & Titles
Parameters
  • fcp - the cp.apple.finalcutpro instance
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1684

scanAppEffectsPresets

   
Signature cp.apple.finalcutpro.plugins:scanAppEffectsPresets(locale) -> none
Type Function
Description Scans Final Cut Pro Built-in Effects Presets
Parameters
  • locale - The locale to scan for.
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 419

scanned

   
Signature cp.apple.finalcutpro.plugins.scanned() -> boolean
Type Function
Description Gets if the system has been scanned.
Parameters
  • None
Returns
  • true is scanned otherwise false.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1725

scanSystemAudioUnits

   
Signature cp.apple.finalcutpro.plugins:scanSystemAudioUnits(locale) -> none
Type Function
Description Scans for Validated Audio Units, and saves the results to a cache for faster subsequent startup times.
Parameters
  • locale - the locale to scan in.
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 314

scanUserColorPresets

   
Signature cp.apple.finalcutpro.plugins:scanUserColorPresets(locale) -> none
Type Function
Description Scans Final Cut Pro User Color Presets
Parameters
  • locale - The locale to scan for.
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 528

scanUserEffectsPresets

   
Signature cp.apple.finalcutpro.plugins:scanUserEffectsPresets(locale) -> none
Type Function
Description Scans Final Cut Pro Effects Presets
Parameters
  • locale - The locale to scan for.
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 439

Methods

app

   
Signature cp.apple.finalcutpro.plugins:app() -> plugins
Type Method
Description Returns the cp.apple.finalcutpro object.
Parameters
  • None
Returns
  • The cp.apple.finalcutpro object.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1339

audioEffects

   
Signature cp.apple.finalcutpro.plugins:audioEffects([locale]) -> table
Type Method
Description Finds the 'audio effect' plugins.
Parameters
  • locale - The locale code to search for (e.g. "en"). Defaults to the current FCPX langauge.
Returns
  • A table of the available plugins.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1393

effectBundleStrings

   
Signature cp.apple.finalcutpro.plugins:effectBundleStrings() -> table
Type Method
Description Returns all the Effect Bundle Strings.
Parameters
  • None
Returns
  • The effect bundle strings in a table.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1062

effectStrings

   
Signature cp.apple.finalcutpro.plugins:effectStrings() -> table
Type Method
Description Returns a table of Effects Strings.
Parameters
  • None
Returns
  • A table of effect strings.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1294

generators

   
Signature cp.apple.finalcutpro.plugins:generators([locale]) -> table
Type Method
Description Finds the 'generator' plugins.
Parameters
  • locale - The locale code to search for (e.g. "en"). Defaults to the current FCPX langauge.
Returns
  • A table of the available plugins.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1435

ofType

   
Signature cp.apple.finalcutpro.plugins:ofType(type[, locale]) -> table
Type Method
Description Finds the plugins of the specified type (types.videoEffect, etc.) and if provided, locale.
Parameters
  • type - The plugin type. See types for the complete list.
  • locale - The locale code to search for (e.g. "en"). Defaults to the current FCPX langauge.
Returns
  • A table of the available plugins of the specified type.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1352

registerPlugin

   
Signature cp.apple.finalcutpro.plugins:registerPlugin(path, type, categoryName, themeName, pluginName, locale) -> plugin
Type Method
Description Registers a plugin with the specified details.
Parameters
  • path - The path to the plugin directory.
  • type - The type of plugin
  • categoryName - The category name, in the specified locale.
  • themeName - The theme name, in the specified locale. May be nil if not in a theme.
  • pluginName - The plugin name, in the specified locale.
  • locale - The cp.i18n.localeID or string code for same (e.g. "en", "fr", "de")
Returns
  • The plugin object.
Notes
  • locale defaults to the current Final Cut Pro locale if nothing is supplied.
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 991

reset

   
Signature cp.apple.finalcutpro.plugins:reset() -> none
Type Method
Description Resets all the cached plugins.
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1048

scanAll

   
Signature cp.apple.finalcutpro.plugins:scanAll() -> nil
Type Method
Description Scans all supported locales, loading them into memory.
Parameters
  • None
Returns
  • Nothing
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1738

scanAppAudioEffectBundles

   
Signature cp.apple.finalcutpro.plugins:scanAppAudioEffectBundles() -> none
Type Method
Description Scans the Audio Effect Bundles directories.
Parameters
  • directoryPath - Directory to scan
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1100

scanAppBuiltInPlugins

   
Signature cp.apple.finalcutpro.plugins:scanAppBuiltInPlugins([locale]) -> None
Type Method
Description Scan Built In Plugins.
Parameters
  • locale - The cp.i18n.localeID code to search for. Defaults to the current FCPX langauge.
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1449

scanAppEdelEffects

   
Signature cp.apple.finalcutpro.plugins:scanAppEdelEffects() -> none
Type Method
Description Scans for Soundtrack Pro EDEL Effects.
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1275

scanAppMotionTemplates

   
Signature cp.apple.finalcutpro.plugins:scanAppMotionTemplates(locale) -> none
Type Method
Description Scans for app-provided Final Cut Pro Plugins.
Parameters
  • locale - The locale to scan for.
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1132

scanPluginCategoryDirectory

   
Signature cp.apple.finalcutpro.plugins:scanPluginCategoryDirectory(locale, path, plugin) -> boolean
Type Method
Description Scans a folder as a plugin category folder. The contents will be folders that are either theme folders or actual plugins.
Parameters
  • locale - The locale to scan with.
  • path - The path to the plugin type directory
  • plugin - A table containing the plugin details collected so far.
Returns
  • true if the folder was scanned successfully.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 901

scanPluginsDirectory

   
Signature cp.apple.finalcutpro.plugins:scanPluginsDirectory(locale, path, filter) -> boolean
Type Method
Description Scans a root plugins directory.
Parameters
  • locale - The locale code to scan for (e.g. "en" or "fr").
  • path - The path of the root plugin directory to scan.
  • checkFn - A function which will receive the path being scanned and return true if it should be scanned.
Returns
  • true if the plugin directory was successfully scanned.
Notes
  • Plugins directories have a standard structure which comes in two flavours:
  • ** //.
  • ** ///.
  • ** ////.
  • This is somewhat complicated by 'localization', wherein each of the folder levels may have a .localized extension. If this is the case, it will contain a subfolder called .localized, which in turn contains files which describe the local name for the folder in any number of locales.
  • This function will drill down through the contents of the specified path, assuming the above structure, and then register any contained plugins in the locale provided. Other locales are ignored, other than some use of English when checking for specific effect types (Effect, Generator, etc.).
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 754

scanPluginThemeDirectory

   
Signature cp.apple.finalcutpro.plugins:scanPluginThemeDirectory(locale, path, plugin) -> boolean
Type Method
Description Scans a folder as a plugin theme folder. The contents will be plugin folders.
Parameters
  • locale - The locale to scan with.
  • path - The path to the plugin type directory
  • plugin - A table containing the plugin details collected so far.
Returns
  • true if the folder was scanned successfully.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 938

scanSystemMotionTemplates

   
Signature cp.apple.finalcutpro.plugins:scanSystemMotionTemplates(locale) -> none
Type Method
Description Scans for system-provided Final Cut Pro Plugins.
Parameters
  • locale - The locale to scan for.
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1214

scanUserMotionTemplates

   
Signature cp.apple.finalcutpro.plugins:scanUserMotionTemplates(locale) -> none
Type Method
Description Scans for user-provided Final Cut Pro Plugins.
Parameters
  • locale - The locale to scan for.
Returns
  • None
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1156

titles

   
Signature cp.apple.finalcutpro.plugins:titles([locale]) -> table
Type Method
Description Finds the 'title' plugins.
Parameters
  • locale - The locale code to search for (e.g. "en"). Defaults to the current FCPX langauge.
Returns
  • A table of the available plugins.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1407

transitions

   
Signature cp.apple.finalcutpro.plugins:transitions([locale]) -> table
Type Method
Description Finds the 'transitions' plugins.
Parameters
  • locale - The locale code to search for (e.g. "en"). Defaults to the current FCPX langauge.
Returns
  • A table of the available plugins.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1421

translateEffectBundle

   
Signature cp.apple.finalcutpro.plugins:translateEffectBundle(input, locale) -> none
Type Method
Description Translates an Effect Bundle Item.
Parameters
  • input - The original name
  • locale - The locale code you want to attempt to translate to
Returns
  • The translated value for input in the specified locale, if present.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1084

unwatch

   
Signature cp.apple.finalcutpro.plugins:unwatch(id) -> watcher
Type Method
Description Unwatches a watcher with a specific ID.
Parameters
  • id - The ID of the watcher to stop watching.
Returns
  • The watcher object.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1774

videoEffects

   
Signature cp.apple.finalcutpro.plugins:videoEffects([locale]) -> table
Type Method
Description Finds the 'video effect' plugins.
Parameters
  • locale - The locale code to search for (e.g. "en"). Defaults to the current FCPX langauge.
Returns
  • A table of the available plugins.
Notes None
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1379

watch

   
Signature cp.apple.finalcutpro.plugins:watch(events) -> watcher
Type Method
Description Adds a watcher for the provided events table.
Parameters
  • events - A table of events to watch.
Returns
  • The watcher object
Notes
  • The events can be:
  • ** videoEffects
  • ** audioEffects
  • ** transitions
  • ** titles
  • ** generators
Examples None
Source src/extensions/cp/apple/finalcutpro/plugins.lua line 1753