Skip to content

RBG-TUM/opencast-editor

 
 

Repository files navigation

Opencast Video Editor

Build & Deploy Demo deployment

The Opencast Video Editor is a stand-alone tool included by Opencast to cut and arrange recordings.

Quick Test

To test locally, run:

npm start

This will start a local test server in the development mode. Open http://localhost:3000 to view it in the browser.

The latest version connected to develop.opencast.org is also publicly available at editor.opencast.org.

To open a specific event with the editor, use the GET-Parameter id like so: https://editor.opencast.org/?id=27cd7156-fda6-4b31-aab5-d56833012caf.

Building the Editor

To build the editor for production to the build folder, run:

npm run build

To make the editor work in a sub-path, use:

PUBLIC_URL=/path npm run build

Configuration

The editor can be configured through the editor-settings.toml settings file. It can either be provided in the public folder when running locally or can be found under etc/opencast/ui-config/mh_default_org/editor when deployed in Opencast. More information can be found in the example configuration file.

How to cut a release for Opencast

  • Run build-release.sh in the root folder
  • Upload the archive as a new release to GitHub
    • Release tag is the current date (year-month-day)
    • Check the commit history for notable changes and list them as a release comment
  • Create an pull request against Opencast
    • In your Opencast, replace the URL the editor.url in modules/editor/pom.xml with a url that points to the archive file in your new release
    • Build the editor module with mvn install. Observe the error message and replace the old sha256 value in editor.sha256 with the new value in the error message. Build again to see if it worked.
    • Check if you need to add any new config values to etc/ui-config/mh_default_org/editor/editor-settings.toml. Do not add the debug values.
    • Verify that the new release runs in Opencast, then create the pull request.

Opencast API used by the Editor

The editor accesses the following endpoints in Opencast:

  • /editor/<mediaPackageId>/edit.json (introduced in OC 9.3)
  • /editor/<mediaPackageId>/metadata.json (introduced in OC 9.4)

If you want to use current editor frontend with an earlier Opencast version, you will have to cherry pick the relevant commits from the Opencast repository yourself.

Translating the Editor

You can help translating the editor to your language on crowdin.com/project/opencast-editor. Simply request to join the project on Crowdin and start translating. If you are interested in translating a language which is not a target language right now, please create a GitHub issue and we will add the language.

Languages

  • TypeScript 94.1%
  • JavaScript 4.0%
  • HTML 1.1%
  • Other 0.8%