Streaming vs Progressive Download vs PHP Streaming
Providers of video content on the Web have now three options for distribution: streaming, progressive and PHP FLV streaming. Each option has its advantages. In order to more effectively present your message through video, it is crucial that you understand these differences.
Streaming
Streaming is the only way to present live feeds and support broadcasts and multicasts (sending one stream to many viewers). A user's machine plays data as it is received and then discards it. Whether you're providing live broadcasts or video-on-demand (VOD) stored on a server, streaming allows broadcasts to run as long as is needed.
One of the primary goals of streaming video is to maintain real-time playback at various connection speeds. To make this possible, streaming media relies on different protocols and servers for delivery than standard Web pages. Real-time Protocol (RTP) and Real-time Streaming Protocol (RTSP) are known as connectionless protocols, in which speed is more highly valued than accuracy. Streaming servers reduce bandwidth overhead by broadcasting data across a network without verifying whether it is actually received.
Progressive Download
In a progressive download, content must be buffered (preloaded) to memory before a recipient can play it. Progressive movies generally should not be made to last more than a few minutes. Content plays as soon as it is available, so on fast enough connections, progressive movies can appear to be streaming. However, if a user wants to jump ahead half an hour in such a presentation, he or she must download everything from the point currently in view to the point of interest he wants to view.
Progressive downloads are sent using two different protocols, Hypertext Transfer Protocol (HTTP) and File Transmission Protocol (FTP). Both can be delivered using ordinary Web servers. HTTP and FTP are part of the connection-oriented protocol suite called Transmission Control Protocol/Internet Protocol (TCP/IP). Connection-oriented protocols guarantee the safe delivery of every packet sent. If a packet is lost, the server continues re-transmitting it until the packet is delivered or the connection is lost. Since progressive downloads use the same protocol as common Web content, there is less a chance of encountering problems getting past firewalls than with content from a streaming server.
Progressive downloads do have advantages. The goal of a progressive download is high quality at any connection speed. Given its superior quality, progressive video has proven very popular in the entertainment industry. It may take a lot longer for a user on a 28.8 kbps modem connection to download the same clip as someone with a much faster cable modem, but once downloaded; the clip will have exactly the same quality on each machine (user).
PHP FLV Streaming
Flash is the perfect solution for video as the installed base of flash is extremely large, the load time is quick and the video quality is better than ever using new On2 VP6 codec (minimum flash player 8 is required).
PHP FLV streaming is a great flash technology which has been created by a community of users who have experienced several different streaming services and have not been satisfied with any of them.
It cannot be used for live feeds or multicasts. It is a kind of 'progressive download' offering immediate random access to different parts of a movie.
The solution is low cost as it does not require a specialized streaming server but only a web server with PHP. Depending on your bandwidth, hundreds of simultaneous connections are possible.
How does it work ?
FLV Metadata Injector (PC only) from Buraks allows you to inject an object containing two arrays into the FLV's metadata. This object contains the exact starting position in bytes and timecode of each keyframe.
Using this specific information user can request any part of the FLV file starting at a specified keyframe.
Difference between Streaming, Progressive Download and PHP Streaming
Usage Scenarios
|