Real Time Media Flow Protocol – RTMFP August 21, 2010Posted by Tournas Dimitrios in Flash, Flex.
This is a newly introduced communication protocol introduced by Adobe supported by flash Player 10 and above. The new protocol will be beneficial for applications running on flash players and Adobe AIR framework. It will enable users to connect with each other directly and communicate using webcam and microphone. Bypassing the dataflow through Flash Media server it will perform better and with reduced latency.
How will it work:
It will require flash player 10 or above installed on user’s computer .While initiating connection between users Flash Media Server authentication will be required which is expected to come in next release of FMS 3.5. Currently Adobe Labs Stratus beta service can be used which allow developers to begin building applications based on RTMFP. After the connection is established between users the data will start flowing between the users. RTMFP uses UDP to deliver its content so there is no guarantee of all data packets to reach successfully their destination i.e. data packets may be out of order, dropped or missed. But since UDP provides low latency and overhead, it will result in better user experience. Two more features which will further enhance user experience are
1) Rapid Connection Restore: Ability to restore connections after brief connection breaks.
2) IP Mobility: Peer to Peer connections will be maintained even if IP address of the user gets changed.
Benefits of RTMFP:
1. Low latency: Since no server is involved in data flow so the trip time is reduced resulting in decreased latency and hence better user experience. Data will flow from client to client rather than from client to server and then server to client.
2. Cost benefit: Since the flow is from client to client no server bandwidth will be used, reducing the server bandwidth costs.
3. Fast reconnection: Rapid Connection Restore will re-establish connections quickly after breakup giving a better user experience.
4. Low overhead: Since the UDP protocol is used. In UDP handshaking is not done reducing the overhead and better efficiency.
5. Speex: New audio codec speex form adobe is optimized to work on RTMFP and deliver excellent user experience.
Drawbacks of RTMFP:
1. Dropped packets or Missing packets: The packets can be dropped or missed due to poor network conditions, can be ignored considering the benefits we get using RTMFP.
2. The audio/video communication is direct between clients so the streams cannot be recorded on FMS.
3. FMS server is still required to establish connection and authenticate users.
Example applications that can be developed on RTMFP are Audio/Video Chat, VOIP (Voice Over IP), Games
Requirement:Flash Player 10 or above. Recomemded flash player version (10,0,22,87 ) or above.
What is speex :Speex is a new audio codec introduced in flash player 10 and above. It overcomes many limitations of old Nellymoser codec. This new codec will provide better audio quality using less bandwidth. Speex can be used for both kind of communication , through Flash Media Server or P2P.Speex is opensource so it can be decoded or converted to any format unlike nellymoser .
Speex Description: Speex encoder and decoder are present in flash player 10 and above. Speex compression is controlled by setting encodeQuality. Encode quality can be set using 11 quality levels 0(Lowest) – 10(Highest).Default value is 6. Speex encoder for flash works in constant bit-rate (CBR) . Speex is designed for Voice over IP (VoIP) which means it provides high quality speech at low bit rate.
P2P and Speex: This codec can be used for P2P audio. For implementing P2P in application currently Adobe Labs Stratus beta service can be used which allow developers to begin building applications . The new protocol RTMFP and UDP can be used with Stratus only .Future version next to FMS 3.5 is likely to come with its support.