Windows Media Server has some technologies that will allow you to reduce the latency on your streams by a lot.
Most notably it has a technology called Advanced Fast Start (only available I think on Windows Enterprise Edition). This is sort of a combination of regular Fast Start (note that normal Fast Start adds to the latency by seconds), a databurst to reduce buffering
on the client, in combination with a mechanism that makes clients start playing your stream without waiting for it's buffer to fill. You will also need to encode your streams specifically for this.
All this together gives you the lowest amount of latency possible, and through your encoding settings you yourself can set the latency/QoS ratio.
A few comments to make:
* so far in my own tests I have not been able to get Silverlight to use either Fast Start or Advanced Fast Start. For me it behaves like the old mediaplayer where I get 6-8 seconds of buffering no matter how I configure my server or encode my streams.
* It is my opinion and experience that you can not reliably use low latency streams on the Internet. This goes for both Flash en Windows Media. Your problem is that if you have viewers all over the world with all sorts of connections, a significant percentage
of your users will have serious quality of service issues that translate into periodic buffering. It is also very difficult to scale up streams like these. If I'm doing mission critical streaming that will attract a lot of viewers, I want to use multiple servers
that are possibly in different geographical locations. In any technology like this, if I add to my redundancy, I will automatically add to my latency because I've set up my infrastructure in such a way that the stream travels from Encoder to Server to some
other Server to the client.
So IMO low latency streams are great for demo's and relatively small scale and unimportant webcasts, but I personally would never use them on the Internet or for critical webcasts.
m3taverse
Member
186 Points
88 Posts
Re: Live Streams
May 01, 2007 03:06 PM | LINK
Windows Media Server has some technologies that will allow you to reduce the latency on your streams by a lot.
Most notably it has a technology called Advanced Fast Start (only available I think on Windows Enterprise Edition). This is sort of a combination of regular Fast Start (note that normal Fast Start adds to the latency by seconds), a databurst to reduce buffering on the client, in combination with a mechanism that makes clients start playing your stream without waiting for it's buffer to fill. You will also need to encode your streams specifically for this.
All this together gives you the lowest amount of latency possible, and through your encoding settings you yourself can set the latency/QoS ratio.
A few comments to make:
* so far in my own tests I have not been able to get Silverlight to use either Fast Start or Advanced Fast Start. For me it behaves like the old mediaplayer where I get 6-8 seconds of buffering no matter how I configure my server or encode my streams.
* It is my opinion and experience that you can not reliably use low latency streams on the Internet. This goes for both Flash en Windows Media. Your problem is that if you have viewers all over the world with all sorts of connections, a significant percentage of your users will have serious quality of service issues that translate into periodic buffering. It is also very difficult to scale up streams like these. If I'm doing mission critical streaming that will attract a lot of viewers, I want to use multiple servers that are possibly in different geographical locations. In any technology like this, if I add to my redundancy, I will automatically add to my latency because I've set up my infrastructure in such a way that the stream travels from Encoder to Server to some other Server to the client.
So IMO low latency streams are great for demo's and relatively small scale and unimportant webcasts, but I personally would never use them on the Internet or for critical webcasts.