Page tree
Skip to end of metadata
Go to start of metadata




Avalon groups manager

Avalon groups manager lives under /admin. Only users in the group admin_policy_object_editor can access this page. Groups are stored in config/role_mapper_[environment].xml 

One can use RoleControls (lib/role_controls.rb) to add/remove groups or add/remove/mass assign users to a group. RoleControls uses RoleMapper from the hydra-access-controls gem.

[This needs be updated for R2 to reflect the new groups]



CAS (Central Authentication Service) is a single-sign on service that is run at IU and other institutions.  Indiana's implementation of Avalon currently uses CAS for login.  Notes on can be found at CAS implementation notes


Avalon doesn't support Shib out of the box. Emory has got it working through SAML in this PR


Notes on can be found at Okta implementation notes

Matterhorn modules

Processing pipeline

Matterhorn is used to process media files sent from Avalon. Processed files can then be distributed to streaming server, download service or back to Avalon.

Files are sent to different workflows depending on their types. For example, video is sent to the workflow defined in felix/etc/workflows/Avalon.xml. This file contains operations that will be applied to a video file, including encoding, generating thumbnails, extracting audio and distributing.

More information

Avalon distributing module

This module sends media information from Matterhorn back to Avalon, including stream link, mediainfo (eventually), etc..


Rubyhorn is a ruby gem that wraps Matterhorn's web services.  Rubyhorn is used to send files to Matterhorn and get information out of it.


MediaElement.js replaces the Engage player in R2 of the Avalon platform. 

Streaming servers

Red5 is a default reference implementation for testing Avalon functionality. Additional support is provided for Adobe Media Server, which will be the production service at Indiana University and Northwestern University.

  • No labels