In computing, a plugin is a software component that adds a specific feature to an existing software application. When an application supports plugins, it enables customization. In the context of Ooyala Flex, various parts of the platform allow for the development and configuration of plugins. This guide provides an overview of the existing plugins. This guide does not cover customer-specific plugins. It covers all plugins that are bundled with every deployment of Ooyala Flex.

Internal Plugins: Internal plugins run inside Ooyala Flex and are configured and managed within the Ooyala Flex console. Examples are the transcode action and the storage resource.

Adapter Plugins: Adapter plugins are internal Ooyala Flex components that translate Ooyala Flex commands to other product interfaces. Adapters help jobs to translate internal Ooyala Flex messages to messages recognised by external resources such as transcoders and QC systems.

Apps: Apps are external web and mobile apps that are deployed in other applications or run in web browsers and connect remotely to Ooyala Flex via Ooyala Flex’s API. Examples of apps are the Adobe CQ player plugin and the Adobe Premiere and Prelude Partner Panel plugins which communicate with Ooyala Flex via REST.

Internal Plugins

Internal plugins reside within Ooyala Flex. Ooyala Flex’s architecture is designed to ensure that powerful plugins can be created with minimal coding effort. Ooyala Flex’s configuration model allows for configuration of plugins as well as scriptable fields. This ensures that your plugin will be versatile and easy to reuse.

Internal plugins comprise two functionalities :

Plugin Code: Custom Java code written against Ooyala Flex’s API.

Plugin Configuration XML: A Ooyala Flex Metadata XML file with details about configuration parameters used to configure the plugin once installed.

The screen shots below show what a plugin configuration file looks like inside a plugin and also once loaded in the UI.

Ooyala Flex’s plugin configuration is managed by metadata definitions. As such, each parameter has a field type. For a full list of field types, please see the field types section.

The following internal plugin types are supported.

Actions - Plugins for Ooyala Flex action types

Event Handlers - Plugins for Ooyala Flex event types

Players - Plugins for Ooyala Flex players

Resources - Plugins for Ooyala Flex resource types

Quotas - Plugins for Ooyala Flex quotas

Timed Actions - Plugins for Ooyala Flex timed actions

Wizards - Plugins for wizards

Adaptor plugins are special low-level internal plugins that translate Ooyala Flex commands into messages that communicate with external resources. Examples of adapater plugins in Ooyala Flex are the transcode adapter and the QC adapter.

Adapters are extremely useful when resources from different vendors are required to work in tandem. For example, one may wish to use an Elemental transcode resource and also a Telestream transcode resource. Without a transcode adaptor, one would require two separate transcode action types, two separate transcode profile types and two separate transcode resource plugins. With an adapter in place, one can use the default transcode plugin and the built in Ooyala Flex transcode profile to transcode using two competing products from different vendors at the same time. So in essence, the transcode Adapter does the work of translating messages at a low level to communicate to each external resource.

With adapters, supporting new vendor solutions is as simple as updating a single adapter rather than implementing a range of new plugins.

The following internal adapter plugins are supported:

  • Transcode Adapter

  • QC Adapter


Apps are created using other software APIs and typically connect to Ooyala Flex through Ooyala Flex’s REST API.

Some example of apps created are as follows:

Editing - Plugins for external editing software

Logging - Plugins for external logging software

CMS - Plugins for external content management systems

Plugin Capabilities

For each plugin, we provide the following information in addition to the name and description. Please note not all fields are shown for all plugins as some are not relevant in some cases.

Field Value Explanation
Icon [ ] Plugin icon
Sub-type Publish Sub-type of this plugin
Deployment Internal Whether the plugin is deployed inside Ooyala Flex or within another product
Supports Configuration Whether this plugin supports configuration
Supports Scripting Whether configuration supports scripting
Scripting Context User, asset What Ooyala Flex objects can be referenced from within the scripting context
Compatibility 5.x What versions of Ooyala Flex this plugin works for
Lifecycle Stable Maturity of this plugin (Experimental, Unstable or Stable)

If the plugin supports configuration, then the configuration properties are provided:

Field Field Type Mandatory Multiplicity Description
Username string 0..1 The username for the account

Vendor Plugins

In this section we list the vendor solutions that Ooyala Flex plugs in to through its plugin framework.

Please note that we integrate with a wider range of solutions than those listed below. Many solution vendors support integration via standard protocols, for example, FTP, SMB/CIFS, REST, SOAP etc. In addition, Ooyala Flex’s API can be used by developers to create their own script-based or Java-based plugins.

Category Vendor
Archive DIVArchive (Oracle)
Transcode Ateme Titan
Transcode Elemental Server
Transcode Elemental Stream
Transcode Telestream FlipFactory
Transcode Telestream Vantage
QC Interra Baton
QC Telestream FlipFactory Loudness Plugin
QC Telestream Vantage
QC Vidchecker
Transfer Aspera
Transfer FileCatalyst
Storage Solutions Amazon AWS S3
Storage Solutions Microsoft Azure Blob Storage
Storage Solutions Google Cloud Storage
CDN Limelight
CDN Akamai
Creative tools Adobe Premiere
Creative tools Avid Interplay
OVP Brightcove
Social YouTube
Social Daily Motion
Social Facebook
Social Twitter