DVD and Microsoft Operating Systems

Contents:
Introduction
DVD Overview for Windows Operating Systems
DVD Movie Playback under Windows
WDM Streaming Class Driver
DirectShow and DVD Support
DVD as Storage Device and Media
DVD and Copyright Protection
DVD Hardware Design and Windows Operating Systems

This article presents information about support available for DVD under Microsoft® Windows® 98 and Windows 2000.

For up-to-date information on this topic, please see the current release of the Windows 98 DDK [ http://www.microsoft.com/ddk/ddk98.htm ].

DVD References and Resources:

Notice that the following links point to servers that are not under the control of Microsoft Corporation. Please read the Microsoft disclaimer [ http://www.microsoft.com/Misc/nonms.htm ] before continuing.

Introduction

"DVD" as a product name does not stand for anything -- like Microsoft Windows, DVD is a branded, trademarked name (owned by the DVD Consortium). As an acronym, DVD has various interpretations, including Digital Versatile Disc and Digital Video Disc, but these initials have come to represent more than just an acronym. As a natural enhancement of CD-ROM, DVD will provide the new generation of optical disc storage technology for a huge array of both consumer electronics and personal computer devices.

DVD should not be viewed as simply another storage medium. DVD provides digital data storage that encompasses audio, video, and computer data, and therefore has the potential of replacing current technologies for business data storage, laser disc, audio CD and CD-ROM, VHS videotape, and dedicated game technologies. DVD was designed from the ground up for multimedia applications, with a key goal of being able to store a full-length feature movie.

The DVD Consortium has defined two major compression technologies, MPEG-2 and AC-3, to be used to store video and audio on a DVD disc. This allows for over two hours of better-than-laser-disc video and better-than-CD audio to be stored on a single disc, opening up new possibilities for content providers.

The primary "flavors" of DVD are the following:

Some quality features for DVD movies that make DVD so attractive for both PCs and consumer electronics are the following:

There is a tremendous amount of information on DVD available; for more information, please refer to one of the references listed at the beginning of this article.

DVD Overview for Windows Operating Systems

Support for DVD from Microsoft is not limited to a new device driver to support DVD-ROM drives. Because DVD encompasses such a broad range of uses and technologies, DVD must be viewed in the context of the whole computer. Microsoft is preparing support for DVD in the following ways:

The diagram in Figure 1 shows the complete support for existing DVD technologies under Windows 98 and Windows 2000. White boxes represent software that will be supplied by Microsoft, shaded components are provided by hardware vendors, and ovals represent hardware supplied by IHVs and OEMs. On most PCs that have Microsoft DVD support, DVD will work as a storage device and, if the proper decoding hardware is present, will support full DVD-Video playback.

Note that some components in this architecture will change based on advances in other hardware technologies, such as the advent of Accelerated Graphics Port (AGP) [ http://www.microsoft.com/hwdev/agp/ ] or improvements in the PCI bus. The only components that will always be present are the DVD-ROM driver, the UDF file system, the WDM Streaming class driver, and the DVD Splitter/Navigator.

Figure 1. DVD Architecture (showing combined MPEG/subpicture/compositing with VPE)

Figure 1

DVD Movie Playback under Windows 98 and Windows 2000

Under the Windows 98 and Windows 2000 operating systems, the following components comprise support for DVD movie playback:

WDM Streaming Class Driver

Computers traditionally have been very good at performing complex operations on data. The PC owes its success as a device to its tremendous abilities to crunch numbers. The PC usually loads an application that is then called upon to load into memory and process a large amount of data, such as a spreadsheet, or a complex newsletter, a database, or even a .WAD file in Doom. After the data file has been loaded, the application interacts with small pieces of the data file.

Multimedia brings new, different problems for the PC to solve, and this is especially apparent in the case of streamed data. The streaming of data involves the loading of an application (as in the previous example), but the application is now responsible for handling large amounts of data in a constant load, or stream, over time. The application never loads the file completely into memory -- it is far too huge and the operations on it are typically sequential in nature.

The best example of this for DVD is an MPEG-2 video stream. When a user asks the PC to play an MPEG-2 file, a program loads and begins the complex process of moving -- that is, streaming -- the MPEG-2 data across the PC to be decoded and displayed. The data might enter and exit the host processor and bus of the PC several times during this process. To add to the complexity of the problem, an MPEG-2 stream starts out at a rate of around 5 - 10 megabits per second. After the stream is decoded, it can easily exceed 100 megabits per second. A single data stream this big can saturate and overwhelm a PC's PCI bus, meaning that an alternate path might be required for the raw, decoded video data.

A single stream demands a potentially large and constant load on a PC over what could be a long time in PC terms. In the case of DVD, the system must be able to manage and decode at least four separate streams (MPEG-2 video, AC-3 or MPEG-2 audio, subpicture, and navigation) independently, and this must be done so that the streams are totally in synch when they reach their final destinations, with no dropped frames or degraded video. This requires precision in load balancing, synchronization, and processing.

The WDM Streaming class driver was designed to deal with all of the issues highlighted above. It is optimized to work with any devices that deal with streamed data. This includes devices that encode data (such as video capture devices) and devices that decode data (such as DVD hardware decoders that decode MPEG-2 streams for playing DVD movies). This class driver uses the standard WDM interface for interconnecting device drivers to optimize data flow within the Windows 98 or Windows 2000 kernels.

The WDM Streaming class driver also deals with common operating system tasks such as direct memory access (DMA), scatter/gather memory use, and Plug and Play. The WDM Streaming class driver can function on both hardware cards and external buses such as USB or IEEE 1394.

As a class driver, the WDM Streaming class driver is designed to cover an entire category of hardware devices, with each device supported by a minidriver supplied by the manufacturer. This significantly reduces the amount of code required to support a device -- provided, of course, that the device follows standard design specifications and principles. For example, the Streaming class driver does the following:

A key benefit with the WDM Streaming class is that it results in a single driver model for MPEG, video capture, USB audio and video, IEEE 1394 audio and video, and other streaming hardware. This means that developers creating drivers for multifunction devices can build on the Streaming class, working with a single driver model that works for all data types. This is a great improvement over previous cases, where for DVD the developer would have to create drivers using different driver models for MPEG-2, audio, MIDI, and subpicture.

It is important to note that the WDM Streaming class driver was designed to work with an array of streaming hardware and software implementations. Because of this, it is designed to take individual, or component, streams. For DVD, this means that DirectShow will split the individual DVD program stream into component streams (AC-3, MPEG-2, subpicture, navigation) and will then feed them separately (in parallel) to the WDM Streaming class driver.

This architecture provides flexibility in architecture and design, allowing for any combination of hardware and software decoding of component streams. Designers can dedicate special-purpose hardware where it makes sense, and use host-based software where that makes sense, and know that Windows will manage the streams optimally to allow for the best playback possible. This architecture is opposed to one where the DVD decoding hardware will only accept an original, interleaved DVD program stream. To most effectively utilize the WDM Streaming class driver, all streaming hardware and software should be designed to take and decode component streams, instead of splitting the streams in hardware.

For DVD under Windows 98 and Windows 2000 operating systems, audio serves as the master clock for synchronization. The operating system reads the current audio time stamp and adjusts video to this by holding or skipping frames. The adjustment occurs infrequently, because the clocks are the same frequency and there is little drift.

For more information about WDM, see the WDM for Windows 98 and Windows 2000 [ http://www.microsoft.com/hwdev/desinit/wdmview.htm ] article.

DirectShow and DVD Support

DirectShow provides support for many DVD playback capabilities, including:

The following DirectShow filters are provided by Microsoft:

Note: Microsoft does not provide MPEG-2 or AC-3 software decode filters with Windows 98. The proxy filters support hardware decoding of those media types. For more technical information about DirectShow, see the web site for the Microsoft DirectShow SDK [ http://www.microsoft.com/intdev/sdk/ ].

DVD as Storage Device and Media

Under Windows 98 and Windows 2000, DVD can be viewed as simply a large storage medium, much like CD-ROM today. To enable DVD-ROM as a read-only device, Microsoft is providing DVD-ROM device support in Windows 98 and Windows 2000, as well as support for the Universal Disc Format (UDF) version 1.02 as installable file systems. This support is completely independent from DVD-Video movie playback, copyright protection, and other issues. Using these drivers, a DVD-ROM drive is treated as another peripheral, following industry-defined methods for accessing DVD discs and handling encrypted content.

Microsoft plans to provide support for writable DVD discs at a later date.

DVD and Copyright Protection

Microsoft is in favor of technical and legal methods for protecting copyright holders rights and has been involved in the DVD Copyright Protection meetings since their inception. Microsoft worked with the multi-industry Copyright Protection Technical Working Group (CPTWG), which announced in November 1996 that its DVD technology subcommittee proposed solutions for preventing unauthorized copying of filmed entertainment from prerecorded DVD-Video. The subcommittee proposed controls using a scrambling scheme first proposed by the DVD Consortium for encrypting disc content and licensing the decryption technology.

Microsoft will provide software that facilitates the authentication process required by this scheme, allowing a DVD-ROM drive to authenticate and transfer keys with a DVD decrypter. Microsoft has no current plans to ship a DVD decrypter, and instead is providing operating system code that will act as the agent to allow either hardware or software decrypters to be authenticated.

For more information, contact the DVD Copyright Protection information source, James Riley at Matsushita Electric Corp. of America, (201) 392-6867.

DVD Hardware Design and Windows Operating Systems

Requirements for hardware designed for optimal performance under Windows 98 and Windows 2000 are defined in the current PC System Design Guide [ http://www.microsoft.com/hwdev/desguid ] guidelines.

The following list summarizes the specific PC 99 requirements defined for DVD hardware:

For complete information about the guidelines for the"Designed for Microsoft Windows" logo program, see the current PC System Design Guide available at http://www.microsoft.com/hwdev/desguid/.

© 1998 Microsoft Corporation. All rights reserved.