Include proprietary codecs

Starting in Runtime v38 with RVM 15, you can add support for licensed media codecs such as H.264 or AAC to your platform. It is up to you to obtain the appropriate licenses for the codecs you require.

This feature works by adding a trustedAppsConfigs object to your application manifest. You provide license information to OpenFin, and OpenFin provides you with the object to include in the manifest. For a more detailed explanation, see Trusted application configurations.

How it works

  1. You obtain the media codec licenses you need, from Via Licensing Alliance or elsewhere as appropriate.

  2. You provide the following information to OpenFin:

    • A list of licensed media codecs to include in your application

    • A list of manifest URLs or match patterns that specify the applications to include the codecs in

  3. OpenFin provides you with a trustedAppConfigs property definition, which contains an embedded digital certificate and includes platform-specific signatures.

  4. You includes this trustedAppConfigs verbatim in your application manifest.

  5. When a user launches your app, the OpenFin RVM:

    • Verifies the trustedAppConfigs signature

    • Checks whether the app manifest URL matches the list of URLs or match patterns included in your original request

    • If the URL matches, allows the encoded media to be played

  6. You report your codec usage to Via Licensing Alliance, or elsewhere as appropriate.

If you provide information for multiple licensed media codecs, the configuration information for all of them is encoded in a single value property.
Use the same trustedAppConfigs definition in each of the application manifests.

How to do it

The trustedAppConfigs definition as provided by OpenFin has the structure shown in the following example. You add this object as a top-level property of the application manifest:

"trustedAppConfigs": {
  "value": "BASE64-ENCODING-OF-CONFIGURATION",
  "signature": {
    "win": "BASE64-ENCODED-SIGNATURE-FOR-WINDOWS", 
    "mac": "BASE64-ENCODED-SIGNATURE-FOR-MACOS"
  }
}

Limitations

  • Internet access is required to validate certificates; there is no option for fully offline mode.