Once of those additions is a feature called Live Smooth Streaming which, if I understand it correctly, provides the equivalent to Adobe's dynamic bitrate streaming by offering fallback bitrates if the connection speed on the user's side fluctuates. The term 'Live Smooth Streaming' is a little bit deceptive however since this service - as far as I understand it - is not true streaming at all, however it comes close to a streaming experience. Instead it uses chunks of HTTP progressively downloaded material to provide a stream-like experience. I guess 'Live Smooth HTTP Download' doesn't sound as sexy.
Another feature is the so-called Live PVR, basically a total rip-off of Adobe's DVR functionality introduced recently to FMS which lets users rewind a live event and catch up to it as well. Microsoft describes their service as a 'PVR in the cloud', and it runs on top of IIS 7 and Windows Server 2008. Ben Waggoner has all the details, mixed in with some marketing fluff.
While it's great to see competition take hold in this space I would really wish for Microsoft to be more innovative at times. Of course they are playing catch up with Flash on the Silverlight front, but I generally expect them to be more experienced in the video streaming space (they've been doing this for much longer than Adobe). We've seen a glimpse of the fact that Microsoft is able to innovate during the preview of the out-of-browser install feature in Silverlight 3, but the blatant copy of Adobe's DVR functionality seems a bit cheap to me. If copying can't be avoided then so be it, but couldn't you at least differentiate the feature a little bit, or top it somehow? That would really get Adobe into gear too and maybe speed up some of their own initiatives - I've heard they are working some new FMS features.


Microsoft has had adaptive streaming in its Windows Media Server for about 10 years agao - long before Adobe had it in theirs. They have extensing this to work in IIS now over HTTP.
PVR functionality is hardly new - it's been around for along time of hard disc recorders, etc - and is hardly a new Adobe idea. Adobe only applied that functionality to online video. Microsoft did in fact have basic PVR functionality (ability to record on the server and watch from start) about 6 years ago.
Smooth streaming is HTTP, but it's still streaming just in the same way as RTSP and RTMP - the player has the potential to pause, seek, etc.
Although Microsoft has had these for many years (yes, well before Adobe!) with MMS and RTSP, the benefits of using HTTP is that its more accepatble to firewalls and can be cached by standard web caches.
Also, since the Smooth Streaming is running on web servers (IIS) there is nothing AFAIK to stop people implementing this on other web servers. This is as opposed to 'closed' RTMP servers.
Something for Adobe to copy Microsoft is the support for any video codec you wish to develop - not just VC-1 and H.264.
Regards
Lee
you didn't read my post properly, I never said that MS was copying Adobe when it comes to adaptive or dynamic streaming.
You are correct in stating that Adobe was first to add DVR features to online video, and online video is what we are talking about here. That's innovation in my book, whereas adding it after the fact to IIS is a rip-off. And since it's such an old idea as you say I wonder why MS releases it only now, just after Adobe has shown it? Coincidence I bet.
HTTP delivery is not streaming, it's simply close to a streaming experience. One of the characteristics of a stream is that it is consumed as it is being watched and not cached or written to disk. MS can sell the caching as a feature, that's fine, but they cannot have it both ways and label it streaming video, that's misleading. Pseudo streaming would be an appropriate label.
Likewise the main reason why many users choose streaming rather than HTTP is exactly due to the fact that a stream is not cached locally.
And btw, the HTTP chunking is also an old hat, Google Video has been doing it for years and so have countless open source projects (in fact the most popular post on this blog is about that very topic, and it's several years old).
You say that RTMP is closed. How come then that Red5 or Wowza offer it too? And stating smooth streaming as not closed must be a joke - you state it can be run on a webserver, but at the same time that webserver has to fulfill the following criteria: must be IIS7 or higher (no Linux support then) and must use Windows 2008 or Vista as the underlying OS (they are really open aren't they, and not proprietary?). Following that argument I'd call FMS more open than IIS since it supports multiple OSs at least.
I'm not sure what point you are trying to make regarding the video codecs. Are you saying that MS supports any codec? Maybe you can elaborate, even though that's going slightly off topic.
My apologies. You didn't actually state that Microsoft of copying Adobe's idea, merely stated that they've introduced functionality which is the equivalent to a similar to Adobe's. My point was that Microsoft has had this technology in its Windows Media Server for over 8 years.
I'm not sure how you think that Microsoft is a ripping Adobe off - if that's the case then both companies are ripping off RealNetworks for having online video products at all :). It's just an evolutionary step in the online video technology that Adobe accomplished first.
You need to understand how they are using HTTP delivery in Smooth streaming. It's using the standard HTTP protocol, but apart from that, it is streaming. My definition of streaming video is the ability to a) do live, and b) allow the user to pause, seek, etc. Both of these are possible with Smooth Streaming. I don't know for sure if Smooth Streaming caches locally - I wouldn't expect it to be, why do you? It is because it looks like regular HTTP requests, standard web caches will cache them. And if you don't want your content cached, then enable the HTTP directives and it won't be.
If you think that a technology that cannot be cached by standard HTTP chaches is somehow more secure, think again as RTMP can be ripped unless you use a secure channel.
And both RTMP and Windows Media Server have used the HTTP protocol before to get through firewalls. Does that mean that when FMS swicths to RTSPT, or when Windows Media switches to MMSH, they are no longer streaming content to users?
It's really an acceptance that HTTP is the ubiquotous protocol, and that streaming needs to use it rather than RTSP or proprietry protocols.
Red5 and Wowza reverse-engineered RTMP and I'm sure Adobe's lawyers are waiting for the most commercially advantageous time to have a little word.
Smooth Streaming from Microsoft does require IIS 7, but my point was that as this was just HTTP delivery, anyone can develop a version for other web servers. We're not talking about the openess of IIS here. [And just because FMS runs on more OSs does not make it open at all.]
Silverlight 3 does in fact support any codec you wish to write as you have direct access to the video pipeline. As standard, it supports VC1 and H264, but anyone could write 'modules' for other video codecs and plug it into their Silverlight project.
Lee
http://www.adobe.com/aboutadobe/pressroom/pressrel...
What Microsoft's Smooth Streaming offers does provide similar functionalities that Adobe's Dynamic Streaming has. But these two implementations are entirely different. In that sense, I don't think it's meaningful to talk about who copies whom. People can argue that FMS copied some features from Windows Media Services as well.
I think what matters is who has a BETTER technology. From what I know, Microsoft's Smooth Streaming has huge potential in scalability and will be much cheaper to deploy for large CDNs. Yes, you need IIS7 as the streaming server, but only as the origin server. All the existing HTTP cache/proxy nodes throughout the web will scale it out for you. I think that's huge. No more need to purchase hundreds of or thousands of FMS servers to scale it out.
Check out these two sites, one for Smooth Streaming and one for Dynamic Streaming, both powered by Akamai. In my tests, Microsoft's Smooth Streaming always seek faster and adapt to network conditions better. I even ran them side by side with very limited bandwidth. Smooth Streaming keeps playing but Dynamic Streaming just freezes. :)
http://www.smoothhd.com/
http://www.streamflashhd.com/
http://www.flashcomguru.com/index.cfm/2008/11/20/h...
http://www.adobe.com/devnet/rtmp/
yeah it has been reversed engineered
but not anymore
FMS is not just a streaming platform
both of you have good points
but the important thing is that Stefan did not say Microsoft was copying adobe, and neither did he said adobe had an original product, he in fact hoped that Microsoft had a more solid product description so adobe could be quicker and offer more on the fms.
and yes video on the web is broken
we all adapt to what we have at our hands
i own a couple of licenses for FMS, and i use a cdn as well for my delivery, and definitely the price is not low for flash, but if the price of changing the architecture of my site from Flash to Silverlight, equals the savings of the delivery, and offers the same QoS that i had before, then i have no problem changing, its going to be painful, flash having 90% or more of market reach, and silverlight just entering the race
in the end all it matters is which one offers the most for your clients
and HTTP Streaming is not real streaming, it just looks like, and its cheaper, that's why the #1 in video delivery uses HTTP, imagine having to pay license per server? its own ever growing CDN
i would love to know their numbers, (and even youtube has the most laggy HD delivery ever!)
It depends on the definition of what is 'closed software'. Just because something is published does not make it open. There are still copyrights, patents and licences to deal with.
Adobe has announced that it will license RTMP for free to encourage player development on more devices than it itself caters for as part of the Open Screen Project. But that doesn't make it open, and neither does it state that server-side implementations of RTMP will be accepted. It has yet not been released according to the website, so no one really knows what Adobe are releasing. They were charging excessive licence fees to send data via RTMP to the server - I don't think they'll give up that revenue share too quickly.
[And one adavantage of publishing your technology is that it makes it much harder for others to use reverse engineering as a defence. ;-)]
So what is your definition of 'Streaming'? Is it that it must used a streaming-specific protocol (e.g. RTSP, RTMP) and no other protocols are acceptable, even if the functionality is identical?
Stefan is saying that Microsoft is copying Adobe - please read the title of this post ;-)
FMS is of course more than a Streaming server - it provides messaging, etc. IIS is far more than a streaming server. It provides programmability and messaging, web services, etc. I'd suggest that is one of the reasons for the move of emphasis from WMS to IIS - why create a new programmming API when a far greater one already exists with lots more developers.
The advantages of IIS over FMS are that this is all over HTTP, a protocol that the infrastrucuture of the Internet can best cater for, and it's also a lot cheaper than FMS. And if you don't want to use IIS, use your favourite instead to do all the programming now, and SmoothStreaming later once someone has implemented it.
Lee
Lastly, since you seem to proclaim that HTTP delivery via IIS 7 has so many advantages over true streaming, can we expect Microsoft to phase other delivery methods out now? Or are you arguing against RTMP simply because it's proprietary?
You also stated that Microsoft had DVR functionality in Windows Media Server 8 for over 8 years. That is indeed news to me.
Clients are being misled if they are being told that RTMP is somehow more secure than HTTP - both are insecure by default. They do both, however, have their own secured versions, each of which are equally secure. It is also possible to deliver DRMed content through both.
By stating that HTTP delivery in flash is progressive delivery, you are showing that you do not understand what Smooth Streaming is. It is not progressive delivery, it is streaming content both live and on-demand such that the user and pause and seek, etc. It is similar to the ability of chunking FLV files, but supports live as well. I'm not aware that Lighty can do live, can it?
I do think we could see Windows Media server beign phased out in prefernce for delivering over HTTP and IIS media services, though who knows. It isn't so important you use UDP over TCP as it was 10 years - it's more important to leverage all the web caches to deliver large volumes of content. [I hope that multicast will continue as it is important within the corporate intranet.] Add to that the great extensibility of IIS and it's support for .NET and many other programming systems such as PHP, this is really positive.
I didn't say that Microsoft had DVR for 8 years. I said that 1) it had basic PVR (ability to record on the server and watch from start) for 6 and adaptive streaming for 10 (though I changed this figure in my following comment to 8).
I think that both companies are innovating in this area, which is good for all of us, especially us who use both products. It's a bit blinkered to accuse Microsoft of ripping-off Adobe on one thing, yet not to accept that there are some things only recently Adobe has implemented (e.g. multirate adapative streaming) which has been standard for all of this decade in Microsoft products.
I do indeed argue against RTMP as it is proprietry. However, not in the way you might think. Because it is expensive to implement, and because the Internet is targetted at HTTP and web data, RTMP will never scale well enough for the future. Do you think that any other company other than Adobe will build cloud services based on FMS?
Lee
The 'DVR' features you mention are quite different to what Adobe is now offering. WMS was not the only server that could record files and play them back, FMS has been doing that since its first release. But there's more to live rewind and catchup than simply offering a recorded stream for on demand playback, and if it really has been around for 8 years as you describe then I do not understand the excitement right now. I think we both know that significant new capabilities have been added.
Cloud based services on top of FMS: isn't that what every CDN under the sun is offering already? Do you also think that the Akamais of this world would deploy a technology like that, one that according to you does not scale well enough?
I said that DVR features are basic in WMS. FMS has been doing it since its first release - and when was that exactly? Two years before Windows Media Server could do it - who was copying/ripping-off who?
What are the required features for DVR functionality? IIS media services has pause, rewind, slo-mo... any others?
I'm talking about real cloud services - one that can run cloud applications upon - not just video-only that the CDNs offer. The only FMS cloud service I'm aware of that is of any significance is Adobe's and that is only a Rendezvous point for RTMFP.
Lee
In my view, the reason that we had this distinction between streaming and progressive download was because that there wasn't enough innovations. At the end of the day, it's all about delivering digital media to end user s and making a great user experience. Does it really matter that if it's "streaming" or "progressive download" or something else? Why cant we have the best of these two or for that matter anything that can give better user experience, performance, scalability, TCO, etc. which are the things that should really matter. I think Smooth Streaming is heading the right direction in that sense.
The other thing that I like about Smooth Streaming and Silverlight is that its very open and extensible. The way that Smooth Streaming client is implemented is that it only uses Silverlight runtime as the decoding and rendering engine. All the adaptive logic and media source related logic is built on top of Silverlight as a Media Streaming Source. Whats even better is that you can get all the source code and the VS project of the reference implementation from Microsofts Expression Encoder. Then you can do all your own innovation and customization in any way you want. Now with Silverlight 3, you can even write your own managed code codec (decoder) and plug in any media format you want. Can you do all that with Flash player? Last time I checked, Flash player doesnt even allow you to seek into un-downloaded portion of the content if you use progressive download. Is it really that hard technically or is it just trying to force people to buy more FMS servers? FLV is such a simple file format but people had to do hacks on the server to actually let Flash player seek properly when talking to a web server. That is nonsense.
Lets stop talking about who copied whom. Like I said before, you can use the same argument on FMS for similar features that Windows Media Services had before it. Dynamic Streaming and Smooth Streaming are entirely different technologies and Smooth Streaming certainly has strengths that Dynamic Streaming does not have. As long as people are doing their innovation trying to create better technologies, customers will always benefit from healthy competitions.
-Sam
But let me also make clear once more that my point was not about the protocol or dynamic streaming but the DVR feature.
I'm glad, Stefan, that you now accept these points.
Regards
Lee
You also should not forget the workflows involved. Doesn't Microsoft's smooth streaming feature require specialized products to do the encoding, as opposed to Adobe's dynamic streaming which allows the same content to be reused (single or dynamic bitrate)?
Combine that with H.264 support (another thing that Microsoft surprisingly added, and I wonder where they got that idea from after trying to convince everyone that VC-1 wad the way forward) and most companies existing workflows will integrate dynamic streaming very easily. I'm working with one such broadcaster right now and I hope to be able to post more details about this sometime in the future as the decision making process was quite interesting.
-Not using HTTP does not make the delivery any more secure;
-That it's about user experience of the content, not the actual delivery mechanism
(The 'Turing test' of Streaming - if the user experiences 'streaming' then it is 'streaming');
-You can write your own video decoder if you want and hence supports any video codec;
-Both Adobe and Microsoft innvoate and launch new functionality that later on the other 'copies'.
I am sure that the workflow and encoding products will improve as we approach release of the product. The file format is based on MPEG 4 container, so it won't take much for the vendors to implement. As you may be aware, there are already live encoders for SMooth Streaming and remember, this is still in Beta. More info here:
http://alexzambelli.com/blog/2009/02/10/smooth-str...
Lee
A few followup points and clarifications:
I think Stefan's first definition of streaming as being about real-time delivery of the content without much buffering is a fine one. And by that definition, Smooth Streaming certainly qualifies; you get two seconds of video downloaded every two seconds, and and end-to-end broadcast delay in the single digits. It's as much streaming as RTSP/RTMP tunning through Port 80 is.
Protocol is pretty much orthogonal to content security at this point. Streamripping of RTMP is pretty trivial these days, isn't it? I believe only RTMPe with SWF verification is considered secure by Adobe.
For Smooth Streaming, content protection is provided by WMDRM or PlayReady. One adavantage of that approach is that encryption is applied in the content creation stage, so there never needs to be a compressed-but-unencrypted file or stream anywhere in the workflow. Also, the CPU cost of encryption only needs to be applied once, with the only scalability hit coming from the license server, which only needs to issue one license per user per session.
We've already announced that Inlet will be providing Live (Spinnaker) and on-demand (Armada) encoding for Smooth Streaming, so this isn't a Microsoft-only encoding technology. The server format itself is just ISO MPEG-4 with XML manifests (one being SMIL in fact).
Probably the most salient difference between Dynamic Streaming and Smooth Streaming is the ability to proxy cache the streams. This gets particualarly interesting when coupled with that live PVR functionality. 100 people could be watching the same live event behind the same firewall, some starting at different times, others pausing and playing. And still only one copy of each chunk needs to go from CDN to the firewall's proxy cache. Smooth Streaming can deliver a lot of the promised scalability of multicast, but leveraging existing web techonologies, and for on-demand as well as live.
FMS is not a free server.
Adobe fans can hardly moan, they (like Macromedia before them) have had the ability to give us the tools we wanted, instead they have chosen to drip feed us small improvements in each version of FMS / Flash. Adobe gave MS the chance to catch up, and whilst I use both MS and Adobe products, I'm now backing Silverlight.
Cheers
Carl
As a senior software engineer for a large CDN, I see time and time again customers becoming ever more frustrated with the "flexbility" Adobe sees in forcing customers to write players.
Sure, there are a lot of player examples out there; but that simply means to me that Adobe missed the point completely and simply require other people's code to fill the void.
Basically with Silverlight, I don't have to do anything other than prep content on the server to be delivered in a smooth fashion. For Adobe, you need to prep stuff, but you also need to have players updated. This is absurd.
I'm also very taken back by the thought that Adobe has been innovative at all. Macromedia was innovative, not Adobe. Macromedia built a product that was innovative at one point in time; all that I've seen Adobe do to the product is drag it along in some sub par fashion.
Personally, I'd love to see Microsoft and others totally beat up Adobe on this matter.
...don't get me started on how flunky the Flash platform architecture is either. The pure fact that anyone - ever - thought that JavaScript was a stable enough language upon which to build an application framework is absurd and incredulous.
Adobe's product is poor and is simply used because executives don't know any better and make the move to use it.
I hope for a future where Flash is gone.
I know many companies which have been "highlighted" on Adobe's site as major partners whose engineers curse the product at every chance.
If you really want to support innovation, try actually building something respectable instead of this half-a$$ed attempt at a server/web product.
If you are who you claim you are then your employer is one of Adobe's major partners in the CDN space. As such, your comments above seem a tad unprofessional don't you think?