I would like to use Flash's RTMFP peer protocol but I am wondering if its worth developing for a mainstream audience? From what I understand it uses UDP and unless firewalls/routers of the users are configured correctly it becomes useless.
Is there a solution to this problem?
There is this: https://github.com/OpenRTMFP/Cumulus
Not sure if you guys have seen it.
I have spoken with the developer and apparently its 95% complete.
I do not know about the failback to RTMP. Which strikes me as the whole thing being useless.
Can anyone investigate and comment further?
I'll also add this into the mix: http://jasmeetsingh.wordpress.com/2009/01/29/my-first-attempt-to-learn-stratus-rtmfp/
The older RTMP operates over TCP port 1935 and falls back to tunneling over 443 and/or 80.
The newer RTMFP uses UDP and requires the ability to make outbound connections to 1935 and also higher port numbers in order to establish a server connection.
Running over port 443 and 80 UDP wouldn’t help, the firewall is likely configured to open up TCP 443 (HTTPS) and TCP 80 (HTTP) while still blocking UDP (Outbound UDP to be enabled).
The Flash Player can also be configured manually to use a TURN proxy, if you’re able to have the customer’s IT department install one to get past the firewall. In Flash Player 10.0, draft-ietf-behave-turn-08 is supported.
Another edit:
Now looking at this: https://labs.ericsson.com/developer-community/blog/beyond-html5-peer-peer-conversational-video
They were able to do RTP/UDP and in circumstances where both clients were behind NAT.
Most networks use some type of NAT (Network Address Translation), which complicates peer-to-peer connections like this. The ICE (Interactive Connectivity Establishment; RFC 5245) procedure allows for establishing connectivity even in the presence of NATs, using STUN/TURN servers.
Could this mean that using ICE means RTMFP could be a worthwhile stopgap until it becomes embedded within the browser?