What is HTTP streaming?

June 22, 2009 10:27 am Tags: No Comments 0

HTTP Streaming can be several things. Here is an attempt to outline the different HTTP streaming protocols:

MP3/AAC/aacPlus HTTP Streaming:
This is usually the SHOUTcast or Icecast ICY protocol, which uses ADTS packetization over TCP. This is NOT compatible with ANY RTSP streaming. This uses an ICY based Streaming Server such as SHOUTcast or Icecast2. This is the part that is MOST confusing: QuickTime/Darwin Streaming Server includes an ICY server module for MP3 streaming only. It is based the old deprecated Icecast1 protocol, and is no longer supported or recommended. Icecast2 is the preferred server here.

HTTP Tunnelling:
This is standards-based RTSP/RTP TCP Interleave (RFC-2326/3550) inside HTTP encapsulation to look like HTTP web server traffic to penetrate difficult firewalls. This method will usually get through content filtered firewalls where HTTP/ICY is filtered. Being standards-based, many different types of audio/video codecs may be used for these streams. Most streaming using this protocol is MPEG-4 based today. This uses an RTSP/RTP Streaming Server, such as QuickTime/Darwin Streaming Server.

HTTP Progressive Download Streaming:
This is nothing more than a file download from a Web Server, and the file plays as it is downloading, hopefully, if there is sufficient bandwidth. The file will also land in the user temporary folder, offering no security to content. This method uses a Web Server.

Hopefully, this clears up some confusion on all of this.