InfoQ

News

Adobe to publish the Real-Time Messaging Protocol (RTMP) specification used in Flash Platform

Posted by Dionysios G. Synodinos on Jan 22, 2009

Community
Java,
Ruby
Topics
Rich Internet Apps
Tags
Flex ,
Adobe ,
RTMP ,
Flash

Adobe has announced plans to publish the Real-Time Messaging Protocol (RTMP) specification, which is designed for high-performance transmission of audio, video, and data between Adobe Flash Platform technologies. This move that has followed the opening of the AMF spec has been received with varying degrees of enthusiasm from the RIA community.

The Real Time Messaging Protocol (RTMP) is a proprietary protocol developed by Adobe Systems for streaming audio, video and data over the Internet, between a Flash player and a server. It has three variations:

  1. The "plain" protocol which works on top of TCP and uses port number 1935
  2. RTMPT which is encapsulated within HTTP requests to traverse firewalls
  3. RTMPS which works just like RTMPT, but over a secure HTTPS connection.

While the primary motivation for RTMP was a persistent protocol for Flash, it is also used in some other applications, such as the Adobe LiveCycle Data Services ES.

Ryan Stewart who serves as a Platform Evangelist at Adobe, feels confident about where RTMP has gotten so far and optimistic about the announced opening up:

The Digital Media group at Adobe has done some great things with RTMP. Over the past couple of years they introduced a variety of secure RTMP measures including an encrypted version of RTMP called RTMPE which enabled content providers to protect their content while allowing it to be consumed by the 98% of computers that have the Flash Player. These types of secure RTMP measures are what makes sites like Hulu possible - because the people that create content feel confident they can protect it while making it freely available.

These security measures are examples of technologies that Adobe built on top of RTMP, and they aren’t part of the core spec that we’re opening up. In general, this is even better news for developers. Adobe spent a lot of work creating those and we think we have a great solution to protect people’s content. But there are no rules in how developers should implement things like security or peer-to-peer functionality in the open RTMP spec - we’re leaving it up to developers to decide how they want to implement it. That helps Adobe’s offerings by expanding the entire RTMP ecosystem and fostering healthy competition for the best solution. Any user of the Flash Platform, from developers to the end users, is going to benefit.

So today Adobe is expanding the community around RTMP by continuing to be as open as possible and foster both innovation and healthy competition. When you think about everything RTMP provides - the data, the video, the audio - and think about all of the possibilities that now exist for 3rd parties and developers, it’s hard not to get excited. This is going to provide an explosion of innovation for the community around the Flash Platform.

There are also people that feel that the opening of RTMP will give Comet a run for its money:

(RTMP) is a robust protocol that enables server initiated data push. In addition to working over specifically assigned ports it can be tunneled over HTTP and HTTP(S). So far Comet has been leading the data push story in the open source and open standards world. Now it may face tough competition from RTMP.

It is important to note that these news from Adobe follow its announced commitment to the Open Screen Project which is supported by many industry leaders including Cisco, Intel, LG, Marvell, Motorola, Nokia, NTT DoCoMo, Qualcomm, Samsung Electronics Co., Sony Ericsson, Toshiba, Verizon Wireless and others:

The project is dedicated to driving rich Internet experiences across televisions, personal computers, mobile devices, and consumer electronics.

To support this mission, and as part of Adobe’s ongoing commitment to enable Web innovation, Adobe will continue to open access to Adobe Flash technology, accelerating the deployment of content and rich Internet applications (RIAs). This work will include:

  • Removing restrictions on use of the SWF and FLV/F4V specifications
  • Publishing the device porting layer APIs for Adobe Flash Player
  • Publishing the Adobe Flash® Cast™ protocol and the AMF protocol for robust data services
  • Removing licensing fees - making next major releases of Adobe Flash Player and Adobe AIR for devices free

Only time will tell if Adobe’s answer to the newly released JavaFX will be enough to maintain its position as the dominant RIA technology provider.

You can find more information on Rich Internet Technologies right here on InfoQ.

Please be aware of how much RTMPE sucks by Peter Thomas Posted Jan 22, 2009 11:25 PM
  1. Back to top

    Please be aware of how much RTMPE sucks

    Jan 22, 2009 11:25 PM by Peter Thomas

    The Digital Media group at Adobe has done some great things with RTMP. Over the past couple of years they introduced a variety of secure RTMP measures including an encrypted version of RTMP called RTMPE which enabled content providers to protect their content while allowing it to be consumed by the 98% of computers that have the Flash Player. These types of secure RTMP measures are what makes sites like Hulu possible - because the people that create content feel confident they can protect it while making it freely available.


    IMHO this is not such a great thing. It's probably not completely Adobe's fault but "people that create content" should understand how such measures degrade the end user experience. For one, the CPU utilization of the end-user goes up significantly. You can find more details in my comment on this blog post about RTMP.

    Short summary: Adobe had no option but to open up RTMP because it had been reverse engineered for years by Red5 and a few other projects (including open source ones). But it continues to encourage the proprietary RTMPE and spins it as a Good Thing - which it is not.

    And don't get me started on the DRM...

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.