Share via


Graphics and Video Hardware Considerations (Windows CE 5.0)

Send Feedback

For information about developing device drivers for a specific type of device, see Windows CE Drivers.

Note   Graphics and video hardware are optional for audio-only networked media devices (NMDs).

Standard definition, interlaced TV output

NTSC D1 is required for devices sold in countries, such as North America, that support the standard.

PAL D1 is required for devices sold in countries, such as Europe, that support the standard.

Graphical frame buffers

A primary frame buffer is required to display the user interface and video on the TV. The amount of RAM available for the frame buffer must be equal to or greater than the amount of RAM needed for the highest resolution that the device can display.

For the storage of frequently used bitmaps, Microsoft recommends implementing a secondary or off-screen frame buffer. In a fast and efficient manner, hardware BitBlt operations can copy bitmaps from the secondary frame buffer to the primary frame buffer. Microsoft also recommends implementing frame buffer page flipping to facilitate smooth on-screen transitions and animations.

Video overlays

Video overlays are additional, separate graphics buffers or surfaces that display other graphical elements such as streaming video, picture-in-picture (PIP), sub-pictures, and subtitles or captioning that is not part of the main user interface.

Video overlays reduce microprocessor overhead because the graphical elements render directly in the overlay buffers, and then the display hardware mixes them with the primary frame buffer. This allows the microprocessor to avoid performing complex software mixing and rendering operations in the primary frame buffer. The following list shows the various types of overlays that Microsoft recommends supporting:

  • Video display overlay

  • On Screen Display (OSD) overlay

  • Subpicture/subtitle/captioning overlay

  • Picture-in-picture (PIP) overlay

    Note   PIP overlay is only applicable to digital video recorders (DVRs).

RGB support for frame buffers and overlays

The 16-bit RGB565 format support is required for the primary frame buffer.

Supporting multiple RGB formats allows the graphical content to display in the native format without conversion to another format. Microsoft recommends supporting additional RGB formats for the primary frame buffer, secondary frame buffers, and overlays. Supporting multiple RGB formats allows graphical content to display in the native format without conversion to another format. The following list shows the additional recommended RGB formats to support:

  • 16-bit ARGB1555
  • 16-bit ARGB4444
  • 24-bit RGB888
  • 24-bit ARGB5676
  • 24-bit ARGB8565
  • 32-bit RGB888
  • 32-bit ARGB8888

YUV support for frame buffers and overlays

The following list shows the recommended YUV support for frame buffers and overlays:

  • 12-bit 4:2:0 IMC2
  • 12-bit 4:2:0 IMC4
  • 12-bit 4:2:0 YV12
  • 12-bit 4:2:0 iYUV
  • 12-bit 4:2:0 NV12
  • 16-bit 4:2:0 IMC1
  • 16-bit 4:2:0 IMC3
  • 16-bit 4:2:2 YUY2
  • 16-bit 4:2:2 UYVY
  • 32-bit 4:4:4 AYUV

Color space conversions

In the graphics display controller or the graphics co-processor, Microsoft recommends providing support for the conversion of hardware color space. The conversion hardware should support conversions between as many RGB and YUV formats as possible.

The networked media device (NMD) software supports software only color space conversions. Software only color space conversion places additional processing workload on the main microprocessor, which may affect the overall system performance.

Two-dimensional graphics acceleration

A display controller with support for two-dimensional graphics acceleration is recommended for offloading common graphics operations from the main microprocessor. A display controller can implement some or all of the recommended two-dimensional graphics accelerations in the following list, which is in order of decreasing importance and preference:

  1. Source-to-destination copies.
  2. System-memory to video-memory moves.
  3. Single color fill or gradient fill of line blits, rectangular blits, elliptical blits, and circular blits.
  4. Standard Boolean raster operation codes. For more information, see Raster Operation Codes.
  5. Font rendering.
  6. Hardware cursor.

Alpha-blending

Hardware alpha blending mixes two or more frame buffers or overlay surfaces using varying degrees of transparency. Hardware alpha-blending allows for special effects features, such as a semi-transparent UI on top of a live video, to enhance the user experience. Microsoft recommends providing the following alpha-blending features in hardware:

  • Per pixel
  • Region/rectangle
  • Mixing two or more frame buffers or overlay surfaces

Scaling

A TV screen may not display graphics content in its native size, so Microsoft highly recommends providing scaling-up and scaling-down of graphics and overlays in hardware. Software scaling imposes a heavy penalty on the main microprocessor, and may cause degradation in overall system performance.

Video decoder

Microsoft recommends offloading video decoding to a dedicated digital signal processor (DSP) or video co-processor to allow the microprocessor to use its cycles for system-related tasks. Offloading also allows the use of a less powerful microprocessor to improve cost effectiveness of the device.

Microsoft does not provide a DirectShow DirectX Media Object (DMO) filter driver, so you must obtain one for each hardware video decoder. Check with the hardware video decoder manufacturer or a third party for an appropriate DirectShow DMO filter driver.

The following list shows the video formats that Microsoft recommends providing support for in hardware:

  • MPEG-4 ISO
  • MPEG-4/H.264 AVC
  • VC-1
  • WMV-9

MPEG-2 support is optional.

Video enhancements

To provide a cleaner, clearer, and crisper picture on the TV screen, which enhances the user experience, Microsoft recommends providing a flicker filter in the display hardware.

In addition to a flicker filter, you can optionally provide the following features in hardware:

  • Anti-aliasing: nearest, bilinear, and anisotropic
  • De-interlacing of interlaced video
  • Motion compensation

Vertical blanking interval (VBI) utilization

The VBI is used for closed captioning (CC). You must provide closed captioning (CC) in countries, such as North America, that mandate it.

TV connections

You must provide composite and S-video connectors in countries, such as North America, that support these connectors.

You must provide SCART in countries, such as Europe, that support this connector.

To provide a higher bandwidth connection to the TV, resulting in a higher quality picture, add component or DVI connectors.

See Also

Hardware Architecture Diagram for Networked Media Devices | Core OS Services | Developing a Board Support Package | Developing a Device Driver | Developing an OEM Adaptation Layer | CETK Tests

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.