Microsoft TV Technologies
Updated: December 4, 2001
The TV broadcast architecture is continuing to undergo enhancements in new versions of Microsoft Windows operating systems, including Windows XP Home Edition and Windows XP Professional.
Windows XP provides an architecture designed to accept and render streams from many sources: audio/video streams, TV streams, and IP streams from the Internet. Windows XP architecture also provides support for the rich description of program content that is part of the data stream.
The goal for Microsoft investment in Microsoft TV Technologies is to ensure that video quality on the PC is beyond what is currently achieved on consumer electronics devices.
On This Page
TV and the PC Experience
Windows XP and the TV Experience
Microsoft TV Technologies
Guidelines for Hardware and Driver Development
TV and the PC Experience
New technologies that integrate the PC with television make the PC more compelling for new audiences and new uses. The living room is a great new market for the PC architecture.
Opportunities for Advancing the PC Experience
If a PC includes a tuner for reception of ATSC or DVB digital broadcasts, the resulting TV viewing experience is better than can be achieved by spending many thousands of dollars on a standalone HDTV system. The PC can deliver programming guide options and a host of features supported by Windows XP that arent available from a standard TV.
These are scenarios that PC-architected solutions can enhance:
Watch the TV programming you like when you like it, with live pause and action replay; view HDTV, premium (pay per view) TV, or interactive TVand share the capability with other PCs or TVs connected on the home network.
Watch DVD movies.
Play state-of-the-art interactive 3D games with real-time streaming audio on the Internet.
Listen to music by playing audio streams purchased on the Web or broadcast on Internet radio.
View photo albums and home movies, taking advantage of Windows XP video input, management, and playback capabilities, and displaying the output on the PC or large-screen TV-style display.
View many forms of video content such as playing streaming video off the Web on demand.
Opportunities for New Products and Services
Hardware manufacturers in the PC industry can find new business opportunities in the convergence of consumer electronics and personal computing. This convergence also offers opportunities for cross-industry collaboration in creating new products and services.
Broadcast network capabilities provide a transmission infrastructure that can support services such as automatic software and file updates. Broadcast technologies enable new applications and business opportunities such as:
New types of programming that combine the PC, the television, and the Internet.
Multimedia Internet content delivered by broadcast networks and stored locally on the PC, which reduces the Internet bandwidth bottleneck and improves the overall user experience.
Secure, billable, and scalable data servicessubscription services for software, electronic news, and entertainment, which encourage creation of new business models.
Windows XP and the TV Experience
The new consumer version of the Microsoft Windows operating system, Windows XP, supports increasingly sophisticated PC/television applications with improved video mixing and rendering, persistent storage of program information, conditional access to content (such as pay per view), and scriptable applications.
New technologies built into Microsoft Windows include broadcast components that allow PCs to receive television programming, data services, and new forms of entertainment. These technologies are enhanced in Windows XP with new user-interface elements appropriate for use on large-screen display devices, such as a progressively scanned display or a television monitor.
Broadcast and video technologies in Windows are based on standards such as MPEG-2, and deliver DirectX, Win32, and ActiveX APIs for easy programming by vendors.
These capabilities are also built on current and emerging standards for broadcast networks and Internet protocols, supporting the IP Multicast protocols for one-to-many transmission of real-time audio and video simultaneously across the Internet.
In total, Windows XP provides solutions for various TV needs, from the broadcast head-end servers to the PC and networked devices in the living room.
Microsoft TV Technologies
Microsoft TV Technologies can accommodate video streams from many sources:
|Cable||Multichannel Multipoint Distribution System (MMDS)|
|DVD||Satellite; Local TV satellite|
|MPEG Encoding||Windows Media Technologies|
In addition to storing the stream, Microsoft TV Technologies can provide output to the graphics, audio, and data subsystems on the PC.
To enable the PC engine to add value, the "receiver" functions must be separated from "display/rendering" functions. The various MPEG streams are received, separated, and routed by host software on the PC, decoded using video acceleration on the graphics hardware, and rendered by an application in a window that the application controls. Copyrighted content must be protected without inconveniencing legitimate users.
To support these capabilities, Windows XP delivers advances in the Broadcast Driver Architecture, DirectX VA hardware acceleration, and VMR, the new Video Mixing Rendering component.
Broadcast Driver Architecture
Broadcast Driver Architecture (BDA) defines a framework that supports components for receiving digital and analog television. Hardware manufacturers can reduce the cost of hardware receivers and ensure interoperability by using the core components of the Microsoft TV Technologies broadcast driver architecture.
Microsoft TV Technologies components include network configuration and control, demultiplexing, table parsing, and IP Data delivery. It supports the main digital television standards, including Digital Video Broadcast (DVB) and Advanced Television Systems Committee (ATSC).
Broadcast Driver Architecture in Windows Driver Kit
DirectX VA for Hardware Video Acceleration
Decoding a video stream with pure software places a huge demand on the processor, affecting overall system performance. Hardware that supports video acceleration shifts the load from the processor to the display chips on the graphics adapter, greatly increasing the capacity of the PC to render high-quality video and high-performance graphics.
Microsoft DirectX VA provides a standard interface for applications and device drivers to interact with the hardware acceleration of video decoding, including alpha blending for DVD subpicture support.
The DirectX VA specification, released as part of DirectX 8.0, provides important advantages over vendor-specific solutions:
The DirectX VA interface provides cross-vendor compatibility between software applications and advanced graphics acceleration capabilities.
Graphics hardware drivers that support DirectX VA provide generic access to the acceleration capabilities of their hardware.
Hardware can be tested with generic drivers on standard systems, rather than requiring separate drivers and testing for each system configuration.
The DirectX VA interface extracts the most basic, computationally intensive portions of the MPEG-2 specification and supports their acceleration in hardware. DirectX VA can also support other key video codecs (ITU-T Recommendations H.263 and H.261; MPEG-1 and MPEG-4).
The establishment of this common interface is expected to increase the capability of computing systems to support video, increase the demand for software applications that provide this capability, and increase the demand for high-performance graphics capabilities.
DirectShow Video Mixing Renderer
The Microsoft DirectShow Video Mixing Renderer (VMR) represents the next generation in video rendering on the Windows platform, replacing the Overlay Mixer component in previous Windows versions. DirectShow VMR is the default renderer for Windows XP.
The earlier graphics chip architecture has separate processing for video overlays on the back-end, but VMR moves it to the front-end and the 3D pipe. Interoperability is a real capability for a PC that includes support for DirectX VA and VMR integrated in chipsets, drivers, and decoders.
DirectShow VMR combines the rendering and surface allocation functionality of several DirectShow filters into a single renderer for all scenarios. This new filter is designed for the current and future generation of adapters.
Software applications using DirectShow VMR can take advantage of these new features:
Real mixing of multiple video streams, using the alpha-blending capabilities of Direct3D-capable devices.
Media playback support, including source color keying, overlay surface management, macrovision, frame-stepping, and improved multiple-monitor support.
True windowless rendering. It is no longer necessary to make the video playback window a child of the applications window in order to contain the video playback. The VMRs new windowless rendering mode allows applications to easily host video playback within any window without having to forward window messages to the renderer for renderer-specific processing.
Support for high-quality video playback concurrently on multiple windows.
A new renderless playback mode, where applications can supply their own allocator component to get access to the decoded video image before it is displayed on the screen.
The ability for applications to easily alpha-blend their own static image datasuch as channel logos or user-interface componentswith the video in a smooth, flicker-free way.
The ability to add a third-party compositing component to implement effects and transitions between multiple video streams entering the VMR.
Backward compatibility with existing applications.
Support for the Microsoft DirectX VA specification.
The VMR uses the graphics processing capabilities of the systems graphics adapter exclusively; it does not perform any blending or rendering of video using the host processor, which would greatly impact the frame rate and quality of the video being displayed.
The Video Port Manager, now a separate component, manages video capture separately from rendering and coordinates with VMR for preview of captured data. Separating capture from rendering allows video port streams to be alpha-blended and time-shifting applications to capture data in PC storage for delayed playback.
More Microsoft TV Technology Components
Other technologies in Windows XP include the following:
Microsoft Tuning Model. A set of objects that enable applications to tune across various network types in a simple and uniform manner.
Scriptable Applications. The Video Control OCX that provides a simple scripting API for TV and DVD applications. It can be combined with other ActiveX controls in a control container such as a Microsoft Visual Basic application.
Guide Store. A persistent mechanism for storing and retrieving information about programs, schedules, and tuning. It supports multiple guide data providers and is flexible and extensible.
Conditional Access. The ability to limit access to a service such as a TV channel based on certain conditions, such as payment of a subscription for a channel or one-time fee for a single program (pay per view).
Guidelines for Hardware and Driver Development
Windows XP includes a significant foundation for TV capabilities in three basic areas:
Easy Drivers. Microsoft is making it easy to create drivers for TV receiver modules. When using the Microsoft TV architecture, drivers for TV receiver modules can be relatively simple and low cost, because many functions are performed in software.
DirectShow Filters. In the DirectShow environment, developers can write any kind of filters, but Microsoft provides a wide range of useful TV-related filters so that developers dont have to do all the work.
Easy TV Applications. In Windows XP, Microsoft does not provide a TV application, but does provide many useful custom OCX controls, to make it easy for developers to create TV applications.
TV and Broadcast Driver Architecture
Designers must ensure that PCs and related computer devices can do everything the TV, VCR, set-top box, and high-fidelity stereo system can do. This requires careful design decisions for adding features to the PC that deliver more than just the attributes of traditional TV.
The following brief guidelines assume that you are familiar with the related display and video technical terminology. Driver and software development details are provided in the Windows DDK and Microsoft Platform SDK.
Broadcast Architecture in Platform SDK
Meet "Designed for Windows" Requirement
DirectX VA 1.0 was released as part of DirectX 8 in 2000. Support for DirectX VA becomes a requirement for the Windows Logo Program for hardware as of July 2001. Drivers and decoders that claim video acceleration capabilities must support DirectX VA.
Windows Logo Program Requirements
Design for Parity with Consumer Electronics
Assess picture quality for image clarity, smooth resizing, and precision of frame delivery.
Ensure that the PC meets or exceeds the video and audio quality of traditional consumer appliances.
Check that rendering is accurate for high motion content.
Integrate Video and TV with the PC
Increase quality of video capture and playback, including good scaling methods to eliminate banding.
Deliver video with low latency when displaying video from both internal and external video devices.
Support receiving digital TV broadcasts.
Increase use of multiple screens and their display controllers. This allows a PC to run a word processing application in one room, while simultaneously supplying a DVD movie or TV content to a TV in another room.
Separate "receiver" functions from "display" functions. The two will be linked by software running on the host processor. This allows different elementary streams such as MPEG video, audio, and data to be sent to the appropriate subsystems within the PC. It also prepares the way for the long-range goal of a video home network.
Use Microsoft DirectShow for video playback.
Design Display Chips for DirectX VA
Implement a fast and robust MPEG-2 and DVD subpicture solution that supports the DirectX VA interface.
Fully support YUV surfaces as textures for input to 3-D, such as conversion to RGB.
Design maximal SVM/H.263/MPEG-4 feature support into next-generation products and expose them when they are fully tested.
Move to preferred configurations and uncompressed surface types, and support memory-conserving globally unique identifiers (GUIDs) as defined for DirectX VA.
Microsoft DirectX VA Specification
Design Graphics Adapters to Support VMR
Support DirectX VA hardware-accelerated video decoding.
Support YUV and "non-power of 2" Direct3D texture surfaces.
Provide the ability to StretchBlt from YUV to RGB DirectDraw surfaces.
Support an RGB overlay or the ability to blend to a YUV overlay surface.
Support high pixel-fill rates.
Provide at least 16 MB of video memory if multiple video streams are to be blended together.
The actual amount of memory required is dependent on the image size of the video streams and resolution of the display mode being used.
DirectShow on the Web
http://www.microsoft.com/ directx/ dxm/ help/ ds/ oview/ basics_intro.htm
Alpha or transparency blending attempts to approximate the way transparent and translucent surfaces distort light rays.
The process of translating an interlaced signal (used for TV and analog video) to a progressive scan signal (used for digital video and PC displays).
Recommended standards for motion video compression published by the International Telecommunication Union. See
Moving Picture Experts Group. The family of standards used for coding audio-visual information (such as movies, video, and music) in a digital compressed format.
An ActiveX control that is a reusable, stand-alone software component that can be used to aid in building a new application.
A computer color-display output signal comprised of separately controllable red, green, and blue signals. RGB monitors typically offer higher resolution than composite monitors.
The method of color encoding for transmitting color video images while maintaining compatibility with black-and-white video.