Home : Video : Streaming : Overview

Introduction - How to Create Streaming Video

This tutorial covers the different types of video streaming on the internet and introduces the two main methods of streaming video: Streaming servers (true streaming) and HTTP streaming. This tutorial is suitable for people who are familiar with basic digital video concepts, and who understand how websites work (see our video tutorials and internet tutorials for more information).

When creating streaming video, there are two things you need to understand: The video file format and the streaming method.

File Formats

There are many video file formats to choose from when creating video streams. The most common formats are:

  1. Windows Media
  2. RealMedia
  3. Quicktime
  4. MPEG (in particular MPEG-4)
  5. Adobe Flash

There are pros and cons for each format but in the end it comes down to personal preference. Be aware that many of your users will have their own preferences and some users will only use a particular format, so if you want to reach the widest possible audience you should create separate files for each format. In reality this isn't usually practical so you need to make a judgment call on which formats to provide. Obviously the better you understand all the options, the better your decision is likely to be.

At this stage we won't worry too much about individual formats (we'll come back to them in the format tutorial).

Streaming Methods

There are two ways to view media on the internet (such as video, audio, animations, etc): Downloading and streaming.


When you download a file the entire file is saved on your computer (usually in a temporary folder), which you then open and view. This has some advantages (such as quicker access to different parts of the file) but has the big disadvantage of having to wait for the whole file to download before any of it can be viewed. If the file is quite small this may not be too much of an inconvenience, but for large files and long presentations it can be very off-putting.

The easiest way to provide downloadable video files is to use a simple hyperlink to the file. A slightly more advanced method is to embed the file in a web page using special HTML code.

Delivering video files this way is known as HTTP streaming or HTTP delivery. HTTP means Hyper Text Transfer Protocol, and is the same protocol used to deliver web pages. For this reason it is easy to set up and use on almost any website, without requiring additional software or special hosting plans.

Note: This is not technically "true" video streaming — the best it can do is a passable imitation.


Streaming media works a bit differently — the end user can start watching the file almost as soon as it begins downloading. In effect, the file is sent to the user in a (more or less) constant stream, and the user watches it as it arrives. The obvious advantage with this method is that no waiting is involved. Streaming media has additional advantages such as being able to broadcast live events (sometimes referred to as a webcast or netcast).

True streaming video must be delivered from a specialized streaming server.

Progressive Downloading

There is also a hybrid method known as progressive download. In this method the video clip is downloaded but begins playing as soon as a portion of the file has been received. This simulates true streaming, but doesn't have all the advantages.

Which Method to Use?

The method you choose will depend on your situation, but most people will opt for HTTP streaming (download or progressive download). This is the easiest and cheapest way to get started. If necessary you can upgrade to a streaming server later.

Still, you will want to understand both options so the next two pages of this tutorial look at each one in a bit more detail. After that we'll talk about how to create the actual video files.

Next Page: Streaming Servers