Red5 - Reference Documentation

Red5 Open Source Flash Server

Authors

Steven Gong, Paul Gregoire, Daniel Rossi

0.7.1

Copies of this document may be made for your own use and for distribution to others, provided that you do not charge any fee for such copies and further provided that each copy contains this Copyright Notice, whether distributed in print or electronically.

2008-07-30


Preface
1. Introduction
2. What's new in Red5 0.7.1
2.1. Introduction
I. Getting Started
3. Frequently Asked Questions
3.1. Downloading
3.1.1. Where can I download Red5?
3.2. General
3.2.1. What is Red5?
3.2.2. Why does Red5 exist?
3.2.3. What does Red5 mean?
3.2.4. Why is it not called Red5 Media Server?
3.2.5. What other names does Red5 go by?
3.2.6. What does the Red5 logo look like?
3.2.7. What would be the best possible scenario that could come out of this project?
3.2.8. What license does Red5 use?
3.2.9. What is the estimated time of delivery for Red5 (eta)
3.3. Protocols
3.3.1. RTMP
3.3.2. AMF
3.4. Server Development
3.4.1. What implementations are currently being implemented?
3.4.2. How far along is the Java implementation?
3.4.3. Why did the Red5 team choose Mina?
3.4.4. Why did the Red5 team choose Spring?
3.5. Client Development
3.5.1. Which component frameworks are we currently reviewing?
3.5.2. What are the advantages of this framework?
3.5.3. Do I have to use this component framework?
3.5.4. Can I use Macromedia Flash Communication Server components?
3.6. Developer Resources
3.6.1. What IDE (integrated development environment) are we using?
3.6.2. Is there a place that we can meet and talk about the project status?
3.6.3. Is there a mailing list ?
3.6.4. Where's the best place to start?
3.7. Team Members
3.7.1. Flash Codecs. AMF, AMF3, RTMP, FLV
3.7.2. Streaming and Networking
3.7.3. App Server
3.7.4. Client Side. Flash, HTML, AJAX, Admin Interface
3.7.5. Docs and Tutorials
3.7.6. Website and Marketing
3.7.7. Project Management
3.8. Accomplishments
3.8.1. What are the milestones?
4. Configuration files used by Red5
4.1. Preface
4.2. Directory "conf"
4.2.1. jetty.xml
4.2.2. keystore
4.2.3. log4j.properties
4.2.4. realm.properties (Jetty)
4.2.5. tomcat-users.xml (Tomcat)
4.2.6. red5.globals
4.2.7. red5.properties
4.2.8. red5.xml
4.2.9. red5-common.xml
4.2.10. red5-core.xml
4.2.11. red5-rtmpt.xml
4.2.12. web.xml (Tomcat)
4.2.13. web-default.xml (Jetty)
4.3. Webapp config directory
4.3.1. red5-web.xml
5. Migration Guide
5.1. Preface
5.2. Application callbacks
5.2.1. Interface IScopeHandler
5.2.2. Class ApplicationAdapter
5.2.2.1. Execution order of connection methods
5.2.3. Accepting / rejecting clients
5.3. Current connection and client
5.4. Additional handlers
5.4.1. Handlers in configuration files
5.4.2. Handlers from application code
5.5. Calls to client methods
5.6. SharedObjects
5.6.1. Serverside change listeners
5.6.2. Changing from application code
5.6.3. SharedObject event handlers
5.7. Persistence
5.8. Periodic events
5.9. Remoting
5.9.1. Remoting server
5.9.2. Remoting client
5.10. Streams
6. Red5 Libraries
6.1. Spring scripting support
6.2. Groovy
6.3. Beanshell
6.4. Ruby
6.5. Jython / Python
6.6. Java 5 Libraries
6.7. Script related JSR's
6.8. Javascript / Rhino
7. Build Environment Setup
7.1. Introduction
7.2. Ant
7.3. Java
8. Building Red5
8.1. Introduction
8.2. Running the ant build
8.3. Red5 debian package
9. How to build with eclipse
9.1. Importing the Red5 Project
9.2. Debugging Red5 in Eclipse
10. Releasing Red5
II. Red5 Core Technologies
11. Create new applications in Red5
11.1. Preface
11.2. The application directory
11.3. Configuration
11.3.1. webAppRootKey
11.4. Handler configuration
11.4.1. Context
11.4.2. Scopes
11.4.3. Handlers
11.5. Sample handler
12. Create new applications in Red5 WAR
12.1. Preface
12.2. The application directory
12.3. Configuration
12.3.1. globalScope
12.3.2. contextConfigLocation
12.3.3. listener (start-up / shutdown)
12.3.4. parentContextKey
12.3.5. log4jConfigLocation
12.4. Handler configuration
12.4.1. Context
12.4.2. Scopes
12.4.3. Handlers
13. Build Environment Setup
13.1. Filename generator service
13.2. Custom generator
13.3. Activate custom generator
13.4. Change paths through configuration
14. Security
14.1. Streams
14.1.1. Stream playback security
14.1.2. Stream publishing security
14.2. Shared objects
15. Scripting Implementations
15.1. I. Select a scripting implementation
15.2. II. Configuring Spring
15.3. III. Creating an application script
15.4. 1. Application adapter
15.5. 2. Application services
15.6. IV. Creating your own interpreter
15.7. V. Links with scripting information
16. Clustering
16.1. Server Configuration
16.2. Configure Edge Server
16.3. Edge on a different Server from Origin
16.4. Edge on the same Server as Origin
16.5. Configure Origin Server
17. Management
A. RTMPT Specification
A.1. Overview
A.2. URLs
A.3. Request / Response
A.4. Polling interval
A.5. Initial connect (command "open")
A.6. Client updates (command "send")
A.7. Polling requests (command "idle")
A.8. Disconnect of a session (command "close")
B. Changelog
B.1. Red5 0.7.1 (unreleased)
B.2. Red5 0.7.0 (2008-02-23)
B.3. Red5 0.6.3 (2007-09-17)
B.4. Red5 0.6.2 (2007-06-17)
B.5. Red5 0.6.1 (2007-05-23)
B.6. Red5 0.6 (2007-04-23)
B.7. Red5 0.6rc3 (2007-04-11)
B.8. Red5 0.6rc2 (2007-02-12)
B.9. Red5 0.6rc1 (2006-10-30)
B.10. Red5 0.5 (2006-07-25)
B.11. Red5 0.5rc1 (2006-07-11)
B.12. Red5 0.4.1 (2006-05-01)
B.13. Red5 0.4 (2006-04-20)
B.14. Red5 0.3 (2006-02-21)
B.15. Red5 0.2 (2005-10-21)