The online video delivery experience
When delivering online videos there are ordinarily two clear ways to do it. Http Progressive Download or Streaming. You may assume that all videos are streaming, but you'll be surprised to know that most aren't.
32 Inch TV
So what are these two methods? How do they differ? What are the advantages and disadvantages of both? Why would I want to use one formula over another?
All web servers are capable of progressive download. This is merely the formula of a video file being delivered via Http to a browser. This is similar to someone downloading a file from your website. In fact the video is delivered in the same manner that an image, a Css, a Js, Pdf, or any other file on your web site is.
The real discrepancy is that media players can begin to show the video while it's downloading. For example, a Flv file being delivered via Http Progressive download will begin to play in your Flash Player as soon as a minute bit of data is received by the browser. The same is true for Windows Media files. Quick Time will wait until the whole file is downloaded before it plays, unless the QuickTime player on the Pc/Mac is set for progressive play. So be specific when posting QuickTime videos.
It's quite clear when a video is being delivered via Http Progressive Download. You will typically see the minute status bar grow as the video downloads. You won't be able to move the scrubber button past the number that has downloaded already. This makes it impossible to jump to the end of the video before that measure has downloaded. If you have a slow web server or minute bandwidth or the end user is on a slow Internet connection, then it's inherent for the end user to observation buffering.
Buffering occurs when the download can't stay ahead of video. The video will stop while it downloads more. If you pause the video and it allow to download a large portion, then you can watch the video uninterrupted. In either case, this is a poor end user experience, this is when you would reconsider using a Cdn.
There is a technology called Psuedo or Seek streaming. This formula utilized Tcp/Ip Range Requests to allow the user to jump to any measure of the video and the player will make a range ask of the file to download that portion. This formula is commonly only for Flv videos and requires extra services, or servers and practice Flash players to function.
When a video is delivered via Http, it is indeed downloaded to the end users computer. This is good and bad. It's good because if the someone watches the video again, it's already cached on their computer. It's bad because it makes it highly easy for someone to steal your content.
Finally, if someone only watches the first minute of your video but doesn't stop the download, the browser will download the whole file and you will pay for the delivery of the file even though the someone didn't watch the whole thing.
Streaming video requires passage to a streaming media server. Some servers are Flash Media Server, Wowza Media Server, Windows Media Server, Darwin Media Server (QuickTime), Real Media Server. These servers commonly need licensing and may cost any thousands of dollars.
Some well known streaming protocols are Rtmp, Rtsp, and Mms.
When a video streams, it is being sent via Udp protocol to a player on the end users compter. The user will have the potential to fast send or rewind the video. The video isn't being downloaded to the end users computer so it is less likely that the article will be stolen. Also if the user only watches 5 minutes of a 30 minute video, then you only pay for the delivery of 5 minutes, not the whole video.
The biggest disadvantage of streaming over progressive download is if the user watches the same video over and over you will pay for the delivery of it each time. Videos are also streamed at what ever bit rate they are encoded at. Keep this in mind when creating Hd potential video. 8Mbps video may sound and look great, but most homes can't keep an 8Mbps connection. If you have indeed high bit rate video, reconsider delivering via Http.
Most web hosting providers or article Delivery Networks (Cdn) will have streaming media servers ready to use. Historically, Flash video was more costly to deliver than other forms. Recently prices have compressed and you will find that it costs about the same to deliver Flash or Windows Media files. In the past I would have said if your video is more than 10 minutes in length deliver it via Stream and less do progressive. Since prices have come down, I would reconsider streaming for any length video since streaming typically begins to play faster than progressive.
If you are finding at using a service such as a Cdn or Cloud Computing and they say you can stream your videos, confirm with their tech keep that they are utilizing a streaming server and not just offering bandwidth.
If you are delivering Flash videos, then you should be delivering via Rtmp or Rtmpe protocol for streaming and http for progressive. Windows Media uses either Mms or Rtsp. Quicktime and Real Media use Rtsp.
I hope you find this description of interest? This is a good guide to help you straight through deciding to use streaming delivery of videos or Http Progressive Download.
Top article Delivery Networks which keep Streaming
* Limelight Networks
* EdgeCast Networks