Update 16 July: see also How Flex exchanges data with red5
I found it very hard to grasp all the different possibilities of talking to red5. So I made a drawing:
Some remarks:
- Options 5-7 are also on offer without SSL.
- AMF is basically something like a zip of your objects, or here explained in other words. AMF3 is choosen by default: netConnection.defaultObjectEncoding = ObjectEncoding.AMF3.
- How can I choose the application layer? In netConnection.connect(“rtmp://your.red5.com/server”). Here, you define the protocoll such as rtmp, rtmps, rtmpt, http, https.
- What if a firewall blocks e.g. port 1935? With netConnection.proxyType = none | best | HTTP | CONNECT, you determine this behaviour. Öööm, however my brain power has not been sufficient to understand what really happens behind the curtain. There is some more information on HTTP tunneling but probably outdated.
- red5 does not support RTMPS directly, but you can use stunnel as described by Macromedia or Sunil Gupta.
- Note that you can divert all web service calls of a Flash Player over your server. This is done with webService.useProxy = true (default = false). I don’t know whether red5 supports this.
- I assume the protocol RTMP (area shown in red) is always the same whether you call it RTMP, RTMPT or RTMPS. The only difference is on which protocols they live on.
- This is a model and doesn’t reflect the entire reality! (otherwise it wouldn’t be a model…)
So these are the options from the application layer starting from AMF3 to the Aether. I hope to come around with a similar post what options exists above NetConnection.
If you know something better than I do, please tell me. I will happily correct it.

18 July 2007 at 7:27 |
[...] Flex exchanges data with red5 Let’s focus on what happens between Hugo, the user and NetConnection: What are the options for exchanging data between red5 and Flex?(click to [...]
25 July 2007 at 1:23 |
Seems very useful information and thanks for linking to by blog.