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

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 14 Next »




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.



CAS (Central Authentication Service) is a single-sign on service that is run at IU and other institutions.  Avalon currently uses CAS for login.  Notes on this implementation can be found here: CAS 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

Matterhorn-engage-streaming app

Is a Red5 webapp that contains the files to be streamed and delivers streaming information to the Engage player.

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.

Engage player

Engage player is a Flash/Javascript hybrid player split into a gem called avalon-engage. It is included in Avalon by inserting partial modules/video_player from the gem. It needs to provide a locals hash with 3 properties e.g. locals: {stream:, mimetype: 'video/x-flv', mediapackaged_id: @video_asset.mediapackage_id}

Engage is dependent on Matterhorn and uses mediapackage_id to pulls information about the streaming video from there.

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