WC3 XHTML 1.0 Compliant WC3 CSS 2 Compliant
 

Introduction

In June of 2006, while I was employed by the Alberta Distance Learning Centre in Barrhead, Alberta, I was asked to produce a practical means by which to stream multimedia files to students over the web. I was to produce a standard for both audio and video streaming, which would be convenient for students using both high speed and dial-up internet connections. The solution needed to be easily implemented within online courses by teachers who did not necessarily have any web design skills. The solution needed to be compatible for both Mac and Windows users, and able to render multimedia of high quality and long durations without excessively long preload intervals. After considerable research and development, I came up with a solution that met all requirements, and thereafter became ADLC's sole and standard solution for delivering mutimedia over the web to students across the province of Alberta.

Examples of the Player in Action

Please see any of the following pages for examples of the Melnitech Flash Video Player.

Features of the Melnitech Flash Player

  • AUTOBUFFERING: The player will accurately measure the users connection speed. The player will then automatically buffer the selected video, for the minimum duration required, to allow the video to be started as soon as possible without any stuttering occurring during the playback process.
  • IMMEDIATE LOADING: The player will commence buffering the FLV file immediately as the page loads, rather than only after the user presses the play button. This helps to reduce the perceived loading time for the viewer. By contrast, most other players, including QuickTime, will start to load media only after the user has pressed the play button, or only if the video parameters are set to auto-play.
  • CHOICE OF AUTO PLAY OR MANUAL PLAY: The author can specify whether the video is to start playback immediately, or only after the the viewer has plessed the play button. Either way, the FLV file will begin to preload immediately after the web page loads.
  • PLAYBACK COUNTDOWN: A video preloader will inform users when the video is loading so they have an idea of how long they have to wait, rather than having them simply assume the video has stalled and subsequently move on to a different web page.
  • INFORMATION DISPLAY: A small window can be made to appear to inform the user of such parameters as file size, video length, video bitrate, and connection speed.
  • CUSTOMIZABLE APPEARANCE: The playback control footer can include a background appropriate for a given organization, and can include any combination of standard playback controls.
  • CUSTOM MENU: If desired, an on-demand help menu or other information display can be built right into the player.
  • AUTO-SIZING: A code segment can be included that will allow the player to auto-size itself according to the dimensions of the FLV file that it loads.
  • VIDEO AUTO-SELECTION: Another enhancement can be added that will allow automatic selection of multiple versions of a video. If an author has created high-speed and low-speed renderings of a media file, the player will automatically load the appropriate video based on maximum permissible buffering time. Viewers may permit the player to choose for them, or choose the other video if they prefer.


Additional Examples of the Player in Action

Please see any of the following pages for some more examples of the Melnitech Flash Video Player.

Background Research - QuickTime vs. Flash Video

The two major web-friendly cross-platform, cross-browser video formats currently available that perform satisfactorily for most users are QuickTime and Flash Video. The following points characterize these technologies:

  1. VERSATILE: Videos can be either embedded into a web page or can open in a separate window, with minimal browser security setting conflicts.
  2. PC and MAC COMPATIBLE: QuickTime and Flash Player are cross-platform, meaning the same player is compatible on both PC and Mac computers. Videos can be authored (with suitable software) or played back with identical results on either type of computer.
  3. BROWSER COMPATIBLE: The players are compatible with virtually all major browsers currently on the market.
  4. SIMPLE TO PLAY: QuickTime and Flash Video can be streamed to the client in a manner that is transparent to the user, with no special knowledge or actions necessary on the user's part.
  5. SIMPLE TO AUTHOR: Specific software tools allow for simple authoring or conversion with little user skill required.

QuickTime - Advantages

The following is a summary of the primary advantages of each from an end-user perspective.
  1. WELL ESTABLISHED: The MOV file format is standard in many portable media-capture devices, such as digital video recorders and digital cameras. The FLV file format is not presently supported by most devices.
  2. STANDARD IN SHARING: QuickTime has been around much longer than Flash Video, and is, therefore, an established standard for many organizations offering cross-browser, platform-independent video for web use. Flash Video, although increasing rapidly in popularity, is not as widely accepted a standard as is QuickTime video.

Flash Video - Advantages

Recently, Macromedia (since taken over by Adobe) introduced a web media format for delivering high-quality audio and video over the Internet. Flash Video (FLV) is a cross-platform streaming file format that plays in Flash Player 7 or later. For the purposes of establishing a standardized web-media format for educational multimedia delivery, utilizing the FLV format offers several distinct advantages over QuickTime video:
  1. UNIVERSAL & AVAILABLE: The FLV format works by being streamed, either by client or server, into Adobe Flash Player. Flash Player is the world's most pervasive software platform, used by over 2 million professionals and reaching more than 98% of Internet-enabled desktops worldwide as well as a wide range of devices. The following graph demonstrates that the Flash Player is already installed on a much higher percentage of browsers than QuickTime. Video played in FLV format will require fewer users to download the plug-in necessary to play the video.
  2. EASIER TO DOWNLOAD & UPDATE: Downloading the Flash Player is generally a seamless experience and typically installs with very little user intervention required. Updating to new versions is nearly transparent to the user. Installation and subsequent updates to QuickTime typically require a user to visit a website and manually invoke the download and installation process. Flash Player is also a much smaller download than QuickTime, approximately 1MB compared to 36MB at the time of this writing.
  3. SIMPLER TO INTEGRATE: Recent versions of Adobe Dreamweaver have the ability to integrate FLV video into web pages in a simple, straightforward manner.
  4. SUPERIOR PERFORMANCE: At the time our last tests were performed (2006), Flash Video compressed using the On2 VP6 codec had a significantly higher quality-to-size ratio than QuickTime video, and downloaded in a significantly shorter time frame, particularly for dial-up users.
  5. FLEXIBLE IN APPEARANCE: Because FLV video is played through a Flash (SWF) file, ready-made and custom-made skins provide considerable flexibility in allowing authors to choose colors, controls, and customizations of their choice.

Other Considerations

  1. Authoring for Flash Video: Adobe Studio 8 Suite provides Dreamweaver and Flash Video Encoder, two tools which make creation of Flash Video files and their incorporation into web pages an uncomplicated matter for web designers. For organizations requiring a site license, licensing fees for Studio 8 vary. Our own Educational license was priced very affordably. However, for private individuals, licensing for Studio 8 can be prohibitively expensive.

    Windows Movie Maker, included freely with most recent versions of Windows, can be used to construct video content which can be easily converted in FLV format by Adobe's Flash Video Encoder. An increasing number of software vendors, such as TechSmith and Swish, are including FLV support in their software programs.
  2. Authoring for QuickTime: QuickTime Pro is required for encoding non-MOV formats into MOV. At our last check, QuickTime Pro was priced very affordably (about $30 US) for organizations and single users alike.


Background Behind the Development of the Melnitech Flash Player

Due to the advantages above, in keeping with ADLC's mandate to provide the best possible learning experience for their students, ADLC made the decision to utilize Flash Video as their preferred method of delivering high-quality streaming multimedia to their students. Several factors were involved in governing these decisions. Their online courses needed to be compatible with both Mac and PC platforms, and needed to be browser-independent. They reach students using both ultra-high-speed internet connections and sub-56kb dialup connections. Students may be using ADSL, microwave, satellite, fibre-optic, dialup, or cable internet connections on Mac or PC using browsers such as Internet Explorer, Safari, Firefox, or Netscape. Teachers of their online courses are generally responsible for developing and maintaining course content. Because their teachers may have very limited technical background, methods adopted for creating and integrating multimedia into course web content needed to be reasonably non-technical and straightforward. Reconciling the wide range of conditions under which their courses are utilized with the need to ensure that the needs of those students, who have newer and faster technologies available to them, are not compromised with respect to quality for the sake of those students who do not have such higher-performing technologies available to them, had been a challenge. While they did not want students who had high connection speeds at there disposal to be forced to watch inferior low-bandwidth video, they also did not want sub-56kb users to be forced to wait excessively long periods of time before they could view their multimedia. The custom programming capabilities of Adobe Flash enabled us to develop a satisfactory solution.

Adobe recommends two methods by which to implement Flash Video. These two methods are outlined as follows:

Progressive Download

The video can be streamed into the Flash Player by the user's computer. This method of streaming is known as Client Streaming, or, in Adobe terminology, Progressive Download. Unlike traditional "download and play" methods of video delivery, Progressive Download allows the video file to start playing before downloading is complete. The video, once downloaded, remains cached on the user's computer. If the user wants to play the video a second time, the video does not need to be downloaded again. The advantage of this is quicker playback, and elimination of additional bandwidth, on subsequent playback attempts. The disadvantage is that if the users know how to copy files out of their cache, they could copy and distribute the video without authorization. Another disadvantage is that if users do not periodically clear their cache, the video will occupy space on their hard drives. The primary reason for implementing FLV via Progressive Download is that there are no special server installations or modifications necessary. The FLV file can reside anywhere on the web server, and can be streamed at any time, with no changes or additional costs.

Flash Media Server

The second method of delivery is that of Server-Side Streaming. By installing Flash Media Server on a web server, or by subscribing to an outside Flash Media Server provider, FLV can be delivered with a greater degree of performance and versatility. FMS is capable of determining a visitor's bandwidth, thus optimizing the video's delivery rate for that particular user's Internet speed. Because the need for buffering is reduced, playback of the video can often begin sooner than with Progressive Download. As the video is played back on a user's computer, the bytes are discarded immediately after they are streamed. This means that the video is never stored on the visitor's computer, thus eliminating both the security issue and the client cache issue described above. Flash Media Server can also be used for broadcasting live media in real time. The down side of this solution is that a license for Adobe Flash Media Server Professional would have to be purchased and installed at a cost of $4500 US. Also, staff members uploading their media files would have to upload to a different directory than that in which their course content was being kept.

Trial Results

I experimented extensively with both of these solutions. Incorporating video into course web pages via progressive download is an extremely simple matter for teachers, given that the import capabilities are built right into Dreamweaver. However, due to the lack of any convenient way to detect a student's connection speed and set the video buffer time accordingly using this method, students with slow connection speeds would often experience choppiness during playback. High-bandwidth videos would sometimes take a long time to load. Without a preloader to count down the waiting time, the video would appear to have simply stalled; and the student would become impatient and carry on to a different web page.

Flash Media Server appeared to be a promising alternative. However, after considerable deliberation, we found that Alberta's major Internet Service Provider appears to be throttling bandwidth for their dial-up clients on selected ports and protocols. The rtmp protocol used by FMS appears to run at less than half the speed of the standard http protocol for clients who use this ISP. This unfortunate situation precluded the use of Flash Media Server for the organization.

Conclusion

The custom-developed Flash Media Player was designed to circumvent, to the greatest possible degree, the problems that teachers and students faced in the matter of online multimedia delivery. Even though the player was first released in 2006, it still performs capably admidst the advent of newer media players and formats. If you would like any additional information about the Melnitech Flash Player, please feel free to contact me at your convenience.