Never fear, RTMFP is here!

Posted on May 27. 2009 by Wes in Beta

When it comes to streaming live video and audio in the browser, Adobe’s Real Time Media Protocol (RTMP) is usually how it’s done. RTMP is a TCP-based (slower but packet transmission is guaranteed) protocol that allows communication between a client and a server. So in a video conferencing application, a user publishes their camera and microphone streams to the server and then the server broadcasts those streams back out to the other connected users. Unfortunately, there are more cons than pros using this method for transmitting live video and audio.

First of all, it’s expensive! The server must manage a total of n^2 incoming and outgoing streams, where n is the number of users in the conference publishing and streaming audio/video. A typical combined video and audio stream rate is between 24kb/s and 48kb/s and Amazon’s EC2 charges about a dime per GB transferred. It really starts to add up.

Secondly, there is usually quite a bit of audio and video delay depending on your location. Let’s say you’re video conferencing with your next door neighbor in Seattle but you’re using a server in New York. Even though you live next door to each other, you’ll notice a significant delay when talking because you have to wait an entire round trip across the United States for an update.

This is where Adobe’s new Real Time Media Flow Protocol (RTMFP) saves the day. RTMFP is a UDP-based (faster but packet transmission is NOT guaranteed) protocol that enables direct peer to peer communication between Flash clients without having to travel through a server. This solves both of the problems above! The server no longer has to send or receive streams and because clients send audio/video directly to each other, there is minimal delay. In addition, you can send higher quality video and audio to each other because you don’t have to worry about overloading the server. It’s a HUGE win.

You must be wondering, “what’s the catch?” The catch is, you and your conference mates must have Flash 10 installed. Do it! It’s definitely worth it.

We integrated RTMFP into Meetcast last week and it’s such a big difference: Less delay and higher quality audio and video. If you’re still using Flash 9 and don’t want to upgrade, that’s fine because we still support RTMP as a fallback. Flash 10 clients will additionally publish an RTMP stream if there are Flash 9 clients in the conference.

Hopefully you guys will notice a big improvement with RTMFP and please let us know if you have any problems or concerns.

(Images created by Brian Lesser)

5 Comments

[...] poste­d he­re­: N­ever­ fea­r­, R­T­M­FP is her­e! | M­eet­ca&#173… Share and [...]

Bill Bartmann

Sep 02. 2009

Cool site, love the info.

C++ RTMP Server

Oct 21. 2009

linuxgid

Dec 01. 2009

Давно искал подобный материал, перерыл весь инет, а тут на тебе. Благодарю автора

ladysman

Dec 02. 2009

Another great list. I’m meeting more friendly and helpful bloggers each week. Great Idea ;)

Leave a reply