Attention: Support for Red5 media server has been now deprecated. Please use the Kaltura tool for video instead.
About the media server (Red5)
As of LAMS 2.3, video recording has been made possible using a dedicated Video Recorder Tool and also a Video Recorder FCKEditor plugin. Both these applications need a media server called Red5 to be installed and configured with LAMS. This wiki page will guide you through the process of downloading, installing and configuring your new media server to add video recording capability to LAMS.
Download the Windows installer from the Red5 0.7 Final release page and run it. Install to the default directory. All done!
Linux, Mac OSX and others
Download the debian package from the Red5 0.7 Final release page. Then just run (as root):
# dpkg -i red5_0.7.0_all.deb
Done! (you've got to love the debian packaging system!
In the Red5 0.7 Final release page you will find a .dmg file for Mac OS X. Download and install as any other Mac OSX application. Red5 will be added to your Applications folder under a directory called, surprisingly enough, Red5.
Other Unix flavours
Red5 0.7 comes as a WAR to use with Sun Java 5 or 6. So download the one according to the Java JDK version you are running on your server. You can drop the war file into a Tomcat or Jetty container.
Once Red5 is started, navigate to http://localhost:5080/installer/. Select the 'oflaDemo', and click 'Install'.
Once that's done, there's only a slight change you need to do to the configuration settings for Red5. Go to where you the Red5 server is installed (Windows: c:\Program Files\Red5, debian/ubuntu: /usr/lib/red5/, Mac OSX /Applications/red5, other unix: see inside the .war file) and edit this file <your-red5-folder>/webapps/oflaDemo/WEB-INF/web.xml. You will see that the last part of the XML file reads:
<security-constraint> <web-resource-collection> <web-resource-name>Forbidden</web-resource-name> <url-pattern>/streams/*</url-pattern> </web-resource-collection> <auth-constraint/> </security-constraint>
You will need to comment all this chunk out as follows:
<!-- <security-constraint> <web-resource-collection> <web-resource-name>Forbidden</web-resource-name> <url-pattern>/streams/*</url-pattern> </web-resource-collection> <auth-constraint/> </security-constraint> -->
The <!-- and --> at the exclude or comment out this section from the file.
If your Red5 was running, make sure you restart it so this changes take effect.
Alternatives to this are to expose the oflaDemo/streams directory using another web server (apache, IIS, etc). Also please read on the Red5 website how to best implement security for your server.
Red5 uses the following default ports. Ensure that your firewall do not block them:
HTTP servlet engine port: 5080
Debug proxy port: 1936
If you cannot open these ports, you might be able to run Red5 on port 80. See instructions.
Configuring Red5 and LAMS
Now, you need to tell LAMS where the Red5 server is. Login as sysadmin in your LAMS server go to the Sysadmin Menu then click on "Edit Configuration Settings" and then go to the Media Server section. There are two options:
- Media Server Recordings URL
- Media Server URL
The Media Server URL is the URL for the Red5 server so this should be rtmp://172.x.x.x/ (of course replace the 172.x.x.x with the domain or the IP of the server in which you installed Red5.
As for the Media Server Recordings URL, this is the directory from where the LAMS server will "grab" the recordings and export them when required (think export portfolio, sequence export, etc). This should look like: http://172.x.x.x:5080/oflaDemo/streams/ (again replace the 172.x.x.x with the domain or the IP)
That's all Now you can get video and audio in all LAMS activities and make use of the Video Recorder tool!
Note that Red5 doesn't necessarily secure your recording and the fact that we have to expose them online means that you might need to get your Red5 server protected using iptables or some other IP restricting mechanisms.
Netconnection not connected
In order to record your video, Red5 requires the port 1935 opened. See further details. See here for more information on Red5 default ports. Other instructions on how to run Red5 over port 80 can be found here.
If you have other problems, post them in the LAMS Community Tech Forums.
If your firewall/network does block the RTMP protocol, then you can tunnel it using RTMPT which acts as an HTTP wrapper for RTMP (see details).
Just change the Media Server details in LAMS to point to rtmpt://<server>. If the issue is the port (default 8088), then change it to run on whatever port your network allows.
Note: Red 5 version 0.80 and higher does not enable RTMPT by default, see here for further details.