Streaming Media and Progressive Download explained

January 6th, 2007

How do you choose whether to deliver a movie using progressive download, streaming, or broadcasting? It’s an important question for you, and since GravityLab’s business is delivering your content to your audience with the best possible user experience in mind, it’s an important question for us, too.
All all of the major streaming media codecs, both audio and video, can be delivered as progressive downloads. Streaming is limited to sound, video, and text. Broadcasting is further limited to compression schemes and quality settings compatible with real-time capture and compression.

Progressive download works even when the bandwidth is not sufficient for real-time playback; it simply buffers incoming data and delivers delayed playback. However, since it is simply a web server delivering your content through the HTTP protocol, many simultaneous demands for that media can result in a poor audience experience with significant buffering while the player waits for the content from the server. The back end infrastructure of the GravityLab content delivery network provides client / server negotiation for delivering the content in a timely, efficient manner for the best possible audience experience. This is important, since your online user’s patience, speaking in statistical averages, is about 4 seconds before they move on.
Streaming movies do not store a copy of the movie on the client computer, making them inherently more difficult to copy without the consent of the movie’s owner. This can be an important consideration, and is one reason why people choose streaming over progressive download.

Streams take up a specified amount of bandwidth, whereas HTTP file downloads proceed as quickly as the connection allows. It is therefore easier to manage the bandwidth usage of a streaming server than of a web server delivering progressive-download movies. With the proliferation of high speed internet connections at home, and because the vast majority of the US workforce has high speed access at work, delivering video content at predefined multiple bit rates (streaming) makes sense.
Broadcasting allows you to deliver coverage of live events as they happen, or to provide real time “chat” between computers. GravityLab provides live video broadcasts that can scale up as your audience grows.
To sum up, if your movie includes live coverage, you must use broadcasting. If bandwidth management and copy discouragement are paramount considerations, streaming may be your best choice for stored content. If bandwidth is not a concern, you want users to be able to receive you media regardless of connection speed, and you don’t mind if users obtain the actual copies of your audio and video content on their computers and portable devices, progressive download may be viable.

Using a Windows Media Server vs. a Web Server :

A Windows Media server is often the best way to stream media because Windows Media Services is designed specifically for that purpose, and all Windows Media components work together to enhance the end-user experience. Intelligent streaming, for example, involves Windows Media Encoder, Windows Media Services, and Windows Media Player.

This section compares the features of a Windows Media server and a Web server and describes the best way to determine which option is right for you.

Comparing server features
The features of each type of server are compared in the following table.

Feature Windows Media Services Web server

Quicktime tools for streaming video

January 5th, 2007

If you want to stream Quicktime files, you will need to encode the videos correctly so they can be played on a streaming server. GravityLab provides this encoding service for affordable prices. We make the process simple for you so that you don’t have to acquire a new skillset just to get your videos online. However, if you are technically inclined, check out the following utilities for Quicktime files.

Streaming Tools
QTPlayer Streaming Info Plug-in Mac OS Win32
This plug-in adds an Info Panel for streaming tracks that shows packet transfer information.
QTStreamSplicer Mac OS Win32
This tool allows you to add an image to an audio only live stream. (or in front of a streaming track)

Darwin Streaming Server: Linking to MP3 via DSS

January 2nd, 2007

Linking to mp3 Streams

Linking to mp3 streams from your mp3 hosting account requires a text file with the extension .m3u. This file has the URL to your mp3 stream in it. For instance, if a mp3 playlist named “Blues” was playing from the Streaming Server, and the domain name of the server was stream.mydomain.net, the m3u file would contain the link:

http://stream.mydomain.net:8000/blues

The “:8000″ is the port for streaming mp3 playlists from Darwin Streaming Server. If you enable port 80 streaming the “:8000″ is not required. The .m3u file could be placed on any web server, and linked to a web page with the standard tag. For instance, to link to a file named “blues.m3u” from a web page in the same directory with the file, the link could be:

Play the blues

Note: For .m3u files to work correctly, your web server must be configured to deliver the correct mime type for .m3u files:
audio/x-mpegurl .mp4

Windows Media MIME Types - IIS and Apache

January 2nd, 2007

Microsoft Internet Information Server 3.0

If you are running Windows NT Server and IIS 3.0 and want to configure the MIME types, create a registration entry file with a .reg file name extension:

1. Open Microsoft Notepad or another text editor.
2. Type in the following text. (Do not cut and paste the text from the Web page.)

REGEDIT4

[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet
/Services/InetInfo/Parameters/MimeMap]

“video/x-ms-asf,asf,,5″=”"
“video/x-ms-asf,asx,,5″=”"
“audio/x-ms-wma,wma,,5″=”"
“audio/x-ms-wax,wax,,5″=”"
“video/x-ms-wmv,wmv,,5″=”"
“video/x-ms-wvx,wvx,,5″=”"
“video/x-ms-wm,wm,,5″=”"
“video/x-ms-wmx,wmx,,5″=”"
“application/x-ms-wmz,wmz,,5″=”"
“application/x-ms-wmd,wmd,,5″=”"
3. Save the file with a .reg file name extension.
4. Double-click on the file to add the entries to your registry.
5. After creating this file, stop and then restart all IIS services.

Apache

1. Ensure that you have server administration privileges. If you do not have these privileges, ask your server administrator to update these MIME type extensions.
2. Change directories to /httpd/conf.
3. Edit the file srm.conf.
4. Add the following lines to the end of the file, or to where the other AddType video/* entries are found:

AddType video/x-ms-asf asf asx
AddType audio/x-ms-wma wma
AddType audio/x-ms-wax wax
AddType video/x-ms-wmv wmv
AddType video/x-ms-wvx wvx
AddType video/x-ms-wm wm
AddType video/x-ms-wmx wmx
AddType application/x-ms-wmz wmz
AddType application/x-ms-wmd wmd

If you add these to the end of the file, make sure that the file ends with a blank line.
5. Save changes and quit the editor.
6. Restart the Web server.

Quicktime MIME types

January 2nd, 2007

.qt video/quicktime
.qtc video/x-qtc
.qti image/x-quicktime
.qtif image/x-quicktime
.qtl video/quicktime
.smi application/smil
.smil application/smil

Real MIME Types

January 2nd, 2007

.rmm audio/x-pn-realaudio
.rmp audio/x-pn-realaudio
.rmp audio/x-pn-realaudio-plugin

.ra audio/x-pn-realaudio
.ra audio/x-pn-realaudio-plugin
.ra audio/x-realaudio
.ram audio/x-pn-realaudio

.rv video/vnd.rn-realvideo

RTSP protocol rollover problem and Windows Media Services 9

January 2nd, 2007

RTSP protocol is used for years for streaming Real Video and Streaming Real Audio. And starting with Windows Media Player 9 Series, Windows Media Services 9 Series and Windows Server 2003 RTSP Protocol is now the default protocol for streaming Windows Media.

Windows Media Services 9 Series can use RTSP, HTTP, or MMS for streaming. It uses RTSP when trying to connect to Windows Media Player 9 Series. If that attempt is unsuccessful, the server uses MMS or HTTP to connect to the Player. This process is called rollover. Earlier versions of Windows Media Player do not support RTSP, but they do support MMS. If the server cannot connect to the Player by using MMS, then the server tries to connect using HTTP. Windows Media Player automatically tries to rollover to different protocols according to its Windows Media property settings.

Protocol rollover for Windows Media Series 9 for URLs starting with “mms://”:

1. RTSPU (RTSP using UDP)
2. RTSPT (RTSP using TCP)
3. MMSU (MMS using UDP)
4. MMST (MMS using TCP)
5. HTTP

When Windows Media Player 9 Series accesses a stream from Windows Media Server 2003 with Windows Media Services 9 Series, it normally uses RTSP protocol and only uses MMS or HTTP protocols if a RTSP connection is not available. Old streaming media recording software as well as old versions of Windows Media Player can only download Windows Media streams using MMS or HTTP Protocols. In most cases streaming media recording works only because of the Protocol Rollover.

Can Windows Media Services 9 stream all media formats?

January 2nd, 2007

No. Windows Media Player 9 Series can play files in a wide variety of digital media file formats, but Windows Media Services 9 Series cannot stream all of those files. In certain cases, you may need to convert digital media files into a compatible format before you can stream them.

Servers running Windows Media Services 9 Series can stream files that are in the Microsoft Windows Media Audio (WMA), Windows Media Video (WMV), Advanced Systems Format (ASF), and Motion Picture Experts Group (MPEG)-1 Layer 3 (MP3) formats. However, Windows Media Services cannot use the intelligent streaming feature to stream files in MP3 format.

You can use a Windows Media server to stream files in other digital media file formats if the appropriate media parser plug-in is enabled. A media parser plug-in translates the information contained within the file to a format that can be used by the Windows Media server and Windows Media Player. To find out whether a media parser plug-in is available for the format you want to stream, contact the digital media file format developer.

Audio Hosting / Video Hosting / Windows Media Hosting