This documentation is for Release 4.x and 3.x.
These instructions provide a recipe for configuring Avalon to use Adobe Media Server (AMS) for content streaming.
In the code blocks below {ams host} = Adobe Media Server and {avalon host} = Avalon Server.
Adobe Media Server 5 Standard can be downloaded from http://www.adobe.com/products/adobe-media-server-standard.html. A serial number is not required for development and testing purposes.
This example uses the default AMS installation location ( /opt/adobe/ams ) and assumes that the Apache server used is the one installed with AMS. If a separate Apache is used make changes accordingly.
Configuration changes within AMS:
# Do all the following as root su - # 1. Download the Avalon configuration for AMS wget -O avalon-vod.zip https://github.com/avalonmediasystem/avalon-vod/archive/master.zip unzip avalon-vod.zip cd avalon-vod-master # 2 Copy avalon.conf into place cp apache/avalon_rewrite.conf /opt/adobe/ams/Apache2.2/conf # 3. Add Avalon configuration to AMS's Apache configuration echo "Include conf/avalon_rewrite.conf" >> /opt/adobe/ams/Apache2.2/conf/httpd.conf # 4. Copy avalon_auth into place and make executable cp apache/avalon_auth /opt/adobe/ams chmod 744 /opt/adobe/ams/avalon_auth # 5. Add Avalon substitution variables to the AMS configuration. # AVALON.STREAM_PATH must be the same as configured for Matterhorn below. # Both servers must be able to reach these directories through their respective file systems. echo "AVALON.STREAM_PATH = /opt/adobe/ams/webroot/avalon" >> /opt/adobe/ams/conf/ams.ini echo "AVALON.AUTH_URL = http://{avalon host}/authorize" >> /opt/adobe/ams/conf/ams.ini
Setup the AMS Avalon application
# 1. Copy Application.xml and main.asc into AMS Avalon application mkdir /opt/adobe/ams/applications/avalon cp adobe/Application.xml /opt/adobe/ams/applications/avalon/ cp adobe/main.asc /opt/adobe/ams/applications/avalon/
Configure Matterhorn
Inspect the following assignments in config.properties and change as needed for your environment.
org.opencastproject.server.url=http://{ams host}:18080 . . org.opencastproject.streaming.url=rtmp://{ams host}/avalon org.opencastproject.hls.url=http://{ams host}/avalon org.opencastproject.streaming.directory=/opt/adobe/ams/webroot/avalon org.opencastproject.hls.directory=/opt/adobe/ams/webroot/avalon . . org.avalonmediasystem.avalon.url=http://{avalon host}/
Configure Avalon
Inspect the following assignments in avalon.yml and change as needed for your environment.
streaming: url_handler: :adobe # or :generic rtmp_base: rtmp://{ams host}/avalon/ http_base: http://{ams host}/avalon/ stream_token_ttl: 20 #minutes
# 1. Start-up host configuration # /etc/rc.d/init.d/avalon_host_config must be edited so above changes to avalon.yml are not overwritten on reboot. # 2. Red5 must be shutdown and the startup service disabled: cd /usr/local/red5 ./red5-shutdown.sh chkconfig red5 off # 3. Depending on how AMS was installed, it might need to be started and set to start on boot: cd /opt/adobe/ams ./server start echo /opt/adobe/ams/server start >> /etc/rc.local
Running Avalon on port other than 80
By default, AMS and Avalon are both configured to listen on port 80. So if you wish to run both on the same host, it might be necessary to configure one of them to listen on a different port. To configure Avalon to listen on a different port, changes in several files are necessary:
/etc/httpd/conf/httpd.conf
/etc/httpd/conf.d/10-avalon.conf
/var/www/avalon/shared/avalon.yml
/etc/rc.d/init.d/avalon_host_config
And don't forget to open the port. The preferred method is to create a shell script that will do the work for you. Here is an example script that you should look through and customize as needed: avalon-iptables-config.sh