RealMedia | Quicktime | Windows Media | Mpeg-4 | Additional Resources
NC State University's Information Technology Department maintains a 200 license RealMedia server. The RealMedia server supports delivery of video and audio content using "streaming". Streaming delivery means that the end user, given the appropriate amount of bandwidth, may only wait as long as 12 seconds for a media file to begin to play, regardless of how long that file may be. Once the user has begun playing the file, they can skip forward in the clip, and will only have to wait a brief time before playback will resume at the new place.
With our upgrade to the newest version of RealMedia server, we can now support several multimedia file formats for streaming delivery, notably Quicktime and Windows Media, in addition to RealMedia content.
The primary use of this server is for on-demand, archived content. This is to say, content that has been previously recorded, and is designed to be delivered to the user when they request it. While the server does support streaming of live events, requests to use this feature have to be handled on a case-by-case basis, as there are more demands on resources (technical and otherwise) for this particular use.
Content that you want to stream must be in an Unity or EOS locker designated for course or departmental content. Personal web space (URL's starting with "www4") is not supported for streaming content from our RealMedia server. Beyond this simple restriction, the server's capability is only limited by what you can dream up.
Streaming is useful for longer content (over 10 minutes in length) or for live broadcast of events. Streaming has an advantage in that it makes it harder for users to download a copy of the media that is being delivered. Streaming allows a viewer to skip ahead in a long presentation.
An alternative is to use what is called "http streaming", where the file is prepared for "progressive download", which most video compression tools will allow. In this instance the media won't play until enough of it is downloaded to provide a buffer for initial playback while continuing to download, so the user does not have to wait. Through careful preparation, it's possible to give users a near-instantaneous playback experience without using the realmedia streaming server at all. The largest benefit here is that it is much easier to support; media content is simply linked or embedded in the web page. The biggest disadvantages are that astute users can download a copy of your content, although it should be noted that embedding content can make that harder to accomplish.
Embedding a media stream means that this media will play inside of your web browser. This is preferable for some users, as it allows them to present other content alongside the streaming content itself.
To stream video and audio content, it should be properly prepared. The following sections cover the basics on preparing and delivering RealMedia, Quicktime and Windows Media.
RealMedia offers players for most of the computing platforms currently used. Specifically, they offer players for Windows (all flavors), Mac Classic, Mac OS X, Linux and Solaris. There is a mp3 only RealMedia player for the Palm, and a RealMedia player for some models of cell phone that play back a scaled-down version of mpeg-4 (known as 3gpp).
Content Creation Tools
RealMedia furnishes both commercial and free tools for creating RealMedia content. For occasional use, the free version of the Real Media Producer is fine. RealMedia Producer Pro costs $199.00 (no educational discounts). It allows you to create custom bandwidth settings, support more than 3 bandwidth settings for encoding, rescale content and save project settings. Many commercial products include RealMedia encoding as well, such as Pinnacle Studio. Note that these products may not ship the most current version of RealMedia's encoding technology, but will nonetheless work.
Windows, Mac Classic and Linux versions of RealProducer
http://www.realnetworks.com/products/free_trial.html
Macintosh OS X: RealMedia Export Plugin for Quicktime
https://producerapps.helixcommunity.org/qtexport/
Creating RealMedia Content
RealMedia Producer will encode from files or from a live video source, which includes a web cam, video capture card or DV Camcorder.
Watch a demo of RealMedia Encoder
This demo requires Flash 6 or newer, and will open in a new browser window.
Linking In Content
To stream a RealMedia file, it first has to be placed in a Unity/Eos locker, such as a courseware locker, departmental locker.
Once the file has been uploaded, you can create a link in your web pages to deliver the file to viewers. It follows a reasonably simply syntax. Your URL to deliver a streaming file will always begin with:
http://realaudio.ncsu.edu/ramgen/
followed with the path to your content. For Wolfware content, your path would use the following syntax.
http://realaudio.ncsu.edu/ramgen/wolfware/xxx/xxxyyy/common/media/file name.rm
Where XXX = dept name and XXXYYY = dept + course.
As an example:
http://realaudio.ncsu.edu/ramgen/wolfware/csc/csc114/common/media/audio.rm
A sample URL for a project stream might look like:
http://realaudio.ncsu.edu/ramgen/unity/lockers/project/mediasource/video/locust.rm
It is also possible to embed RealMedia content into a web page. If you are using Dreamweaver, Macromedia distributes an add-on (called an extension) that can make this easier.
Go to Macromedia's extension site
Content Creation Tools
Apple does not offer a free tool for compressing Quicktime content, but this capability is built into many software products, including Apple's own content creation tools (iMovie, Final Cut) as well tools such as Adobe Premiere for both the PC and Mac. For converting existing, edited content, upgrading the free Quicktime Player to Quicktime Pro is a very cost-effective option. It can recompress content, rescale and also prepare content for streaming.
Creating Streaming Content
Watch a demo of using Quicktime Player to Export a Movie for streaming. (will open a new browser window).
Linking in Content
Linking Quicktime content for delivery can be accomplished through two main mechanisms. One requires the user to use an embed tag in their web page to deliver the quicktime movie, the second way requires the user to create a special Quicktime movie called a "Reference Movie" that contains the code to request a streaming file.
Using the embed is not hard, but due to the large amount of options for the Quicktime plugin, it can be a bit daunting. Here are is a code example to work from.
<embed src="lowtaplaunch.mov" width="320" height="330" autoplay="true" controller="true" border="0" pluginspage="http://www.apple.com/quicktime/download/indext.html" target="myself" type="video/quicktime"></embed>
In this example, a reference movie "lowtaplaunch.mov" contains a single call to the actual content you want to stream. In this case, it is pointing to a rtsp: stream provided by the RealMedia server. This link will not directly work in a web browser, since web browsers do not know how to handle a rtsp: call -- that is the job of the media player itself.
rtsp://realaudio.ncsu.edu/unity/lockers/project/mediasource/video/LowTapCSFtest.mov
You can get MakeRefMovie at:
http://developer.apple.com/quicktime/quicktimeintro/tools/
Below is a brief tutorial on how to use this tool to create a reference movie for streaming.
Using MakeRefMovie to create a Reference movie for streaming
In the example given above, note that "autoplay" is set to "true", but it is often better to allow the user to launch the movie manually. Autolaunching embedded streams can slow down page loading times, and takes control away from the user. This is highly recommended for any instance of where you want to embed multimedia content, not just Quicktime, into a web page.
Width and Height numbers should be defined by the frame size of the movie itself. In the example above, the final delivered movie has a width and height of 240x180. It is customary to add 16 pixels to the "height" dimnension of the movie so that the user can see the transport controls for the Quicktime Plugin -- although there is also a call to turn off the controller entirely.
Full documentation on embedding is available at http://www.apple.com/quicktime/authoring/embed.html
Macromedia offers an extension for embedding Quicktime that makes easier to do, and will ensure better compatability with Internet Explorer, due to it's non-standard way of handling object embedding.
Go to Macromedia's extension site
In addition, the freeware tool PageOT can generate the embed code for you. It is very simple to use.
http://www.qtbridge.com/pageot/pageot.html
Again, if you create a reference movie, you do not need to embed it in your page to stream the content. You can simply link to the referenced movie. This is much easier for someone who does feel comfortable using embed tags. The simplest way is to use Apple's free MakeRefMovie tool, which is available for Windows and Mac systems.Reference movies are easier to link, in that they are linked just like any other type of linked content. However, you will now have at least two movies to keep up with for every link that you create; the actual Quicktime file that you want to stream, and the reference movie that actually launches the stream.
Streaming Windows Media content is very similar to RealMedia content. It is important to follow the same rules for production of Windows media content that you would follow for producting RealMedia. This includes making sure that when you encode your content that you watch your bandwidth requirements. In addition, you may need to expressly tell your encoder that you want to encode your content for delivery through a streaming server (which is similar to what must be done when encoding Quicktime).
Essentially, everything in the below URL before /unity/lockers (in Bold) is mandantory. /unity/etc. is the path to your media file. Note that when you construct the URL, that you must append .asx to the end of the URL. You do not actually rename the file (leave it as chancellor.wmv). This is a bit confusing to be sure.
http://realaudio.ncsu.edu:80/asxgen/unity/lockers/project/mediasource/video/chancellor.wmv.asx
At this time, the best way to deliver a mpeg-4 stream is by using the same mechanism as delivering a Quicktime streaming media file. There is not a standard way to express a rtsp:// stream inside a browser without requiring users to modify their browser settings to work with other mpeg-4 capable players besides Quicktime, such as Videolan Player. Users can modify their MIME settings in their browser to have a player other than Quicktime handle mpeg-4 streams, but that is beyond the scope of this documentation.
University of California at San Francisco's Embed Code Generator