Friday, March 7, 2008

Adobe Patents Media Server Technology

For many years I was a pretty active member of the Flash Media Server developer community and also the Red5 open source project community. Red5, in large part, aims to replicate the functionality of the Flash Media Server. Flash Media Server is an Adobe product that provides video streaming services to Flash, and also interactive communication services that allows a Flash application to communicate with centralized code or other Flash clients in a real-time way. Examples would include person-to-person games, shared whiteboard applications, video conferencing, etc.

While I am not really active in that world any more, I still follow it. This morning I read a post by Stefan Richter, an FMS community stalwart, that must have a fair number of people a bit nervous. The post essentially describes a patent which Stefan interprets as Adobe having patented the RTMP (Real Time Media Protocol) protocol which governs the communication between the Flash client and the Flash Media Server.

This post is an effort to lower the heart rate of the Flash open source world, so lets cut to the chase: by my read, Adobe did not patent the RTMP protocol. The open source world is safe.

Of course I am not a patent lawyer though I do have several patents, and I have gotten pretty good at writing and reading them. So while I do understand the patent, I will caveat here by saying it is always possible, given that I only studied it for twenty minutes or so, that I have missed something. But that said, here is my analysis.

Adobe has patented a *system* which comprises a media server *and* a media player. In other words a violating system would have to contain both elements. The reason that the FMS clones are safe is because they do not contain a client. They did not create the client, and they are only solving half the problem.

To help understand why things work this way, a little background in patents might be helpful. The way patents work is through what are called claims. A claim is a statement of a collection of things an invention must do to to be considered infringing. Patents generally have numerous claims. In order to examine a patent and test for infringement, the first step is to read each claim of the patent and see whether for that claim, all of the elements of the claim are in the potentially infringing invention.

So in this case, as far as I can see, all of the claims of the Adobe patent describe a system which contains code running on the client *and* the server. And so, since none of the FMS competitors' products contain a media player, no infringement.

On the other hand, what this does prevent is Microsoft from making a Windows Media Server for Silverlight that uses an RTMP-like protocol. I am not sure how necessary it would be to replicate the RTMP for Microsoft to deliver equivalent functionality, but if it is necessary, this patent is a pretty good firewall against that.

In any case I am sure many of you will be reviewing the patent and my analysis. I will be curious to see if any of you think I have missed any server side only claims, or for that matter anything else which might add a different perspective.

9 comments:

Christophe NEY said...

Hank,

Thank you very much for your post that explains very well why Red5 is definitively safe.

Christophe
OW2 Consortium Member
Red5 user and fan

Kirtimaan said...

Hank,

Thanks you very much for detailed post which explains about Adobe's patent on Media Server Technology.

I have a confusion whether adobe claimed patent for RTMP itself or for media server technology ( means a media client and server communicating each other for the purpose of streaming media content using RTMP technology )?

I was planning to use Red5 as streaming server for my website and today all of sudden I noticed the mails in Red5 community. So little bit confused.

Hank Williams said...

Kirtimaan,

Thank you very much for your comment. Regarding your question, the patent is for a system that comprises a client and server, not for the protocol.

Stefan Richter said...

remember that Adobe states that they did in fact patent RTMP. The patent I found may refer to something else... or it may not.

Hank Williams said...

Stefan,

I suspect strongly that you found the right thing, and that the person who said "adobe patented RTMP" was speaking on colloquial and not legal terms. Because you cannot patent a protocol. You can patent a system that executes all or a part of the protocol. There is a big difference between the two and I think you are seeing an example of that here. The only other thing another patent might do that could cause trouble is discussing some aspect of server functionality that is divorced from the client functionality. I very much doubt that there is another patent that does that since it really would not make sense to separate such claims into a separate patent.

Anonymous said...

Hank,
may I ask what do you think about software and business methods patentability as a software developer with experience?

I don't ask about patents in general (like in pharmaceutics), only software and business methods

Hank Williams said...

Anonymous,

I am not at all against software patents. I have several. Obviously there have been problems with the system and some obvious patents have been issued. But I believe patents help little guys far more than big guys. Generally, I believe that the tech sentiment against patents is part of a larger cultural war against all intellectual property protections which I wrote about here.

Anonymous said...

Ok, but isn't software algorithms and business methods similar to mathematic?

If we can't patent c2 = a2+b2 then why we can patent
"#ifdef SELFTEST
main() { UP_fprintf(UP_stdout,"hello, world!\n"); }
#endif
"
?

where is the logic

Kirtimaan said...

Hank,

Thanks for your response. Now it looks that Adobe patent may play important role in FMS vs Red5 vs Wowza.

Kirtimaan

Post a Comment