Flash Video: Progressive Download
Progressive downloading is the easiest and cheapest way to display Flash video on a web page. Although it is not as powerful and flexible as true streaming, it simulates streaming fairly well and most end users would never know the difference. However you need to be aware of the following limitations of progressive downloading:
- It cannot be used for live events — only stored video files.
- It is less efficient than true streaming.
- It cannot automatically adjust for the end user's connection speed.
- It is not secure — the video file is saved on the end user's computer.
- The end user cannot jump ahead to a later part of the video until it has downloaded*.
To add a progressive download video to a web page you need two files: An FLV video file and an SWF file to play the video. For more information see Flash Video and Flash File Types.
For now we will assume that you have the correct files and you are ready to add them to your web page. There are two ways to do this: Direct linking and embedding.
Direct Linking to Flash Files
The simplest way to put Flash video on a web page is to create a hyperlink like this:
<a href="videoplayer.swf">Click here to view video</a>
However this method is somewhat unpredictable and won't give the best results. The SWF file will probably take over the whole browser window which is usually ugly and confusing for the user. Only use this method if you have a specific reason to do so.
Embedding Flash Files
A better method is to embed the SWF file in the web page with the following HTML code.
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="400" height="400" >
<param name="movie" value="videoplayer.swf">
<param name="quality" value="high" >
<param name="LOOP" value="false">
<embed src="videoplayer.swf" width="400" height="400" loop="false" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"></ embed >
</ object >
Note: For maximum browser compatibility this method uses two tags: <object> and <embed>. You will need to set the file name (highlighted in red) and other attributes for both tags.
* A reader has alerted us to a project which allows progressive files to skip ahead (using keyframes) before the entire file has downloaded. We have not checked this thoroughly ourselves so we cannot vouch for it, but it looks promising:
www.flashcomguru.com/index.cfm/2005/11/2/Streaming-flv-video-via-PHP-take-two