5 out of 24 rated this helpful - Rate this topic

Microsoft MPEG-2 Video Decoder

Applies to: desktop apps only

This filter decodes MPEG-1, MPEG-2, H.264 video.

Note  Decoding of H.264 video requires Windows 7.

Note  This filter is not supported on IA-64-based platforms.

In the registry, the friendly name of this filter is "Microsoft DTV-DVD Video Decoder".

Filter Information
Filter Interfaces

IAMDecoderCaps

IBaseFilter

ICodecAPI

Input Pin Media TypesVideo input pin:
  • MEDIATYPE_DVD_ENCRYPTED_PACK, MEDIASUBTYPE_MPEG2_VIDEO
  • MEDIATYPE_MPEG2_PES, MEDIASUBTYPE_MPEG2_VIDEO
  • MEDIATYPE_Video, MEDIASUBTYPE_MPEG1Packet
  • MEDIATYPE_Video, MEDIASUBTYPE_MPEG1Payload
  • MEDIATYPE_Video, MEDIASUBTYPE_MPEG2_VIDEO

Subpicture input pin:

  • MEDIATYPE_DVD_ENCRYPTED_PACK, MEDIASUBTYPE_DVD_SUBPICTURE

Starting in Windows 7, the video input pin also supports the following input types:

  • MEDIATYPE_Video, MEDIASUBTYPE_AVC1
  • MEDIATYPE_Video, MEDIASUBTYPE_H264
  • MEDIATYPE_Video, MEDIASUBTYPE_h264
  • MEDIATYPE_Video, MEDIASUBTYPE_X264
  • MEDIATYPE_Video, MEDIASUBTYPE_x264

See H.264 Video Types for more information. The input media type can change dynamically between MPEG2 and H.264 types.

Input Pin Interfaces

ICodecAPI

IKsPropertySet

IMemInputPin

IMFSampleProtection

IPin

IQualityControl

Output Pin Media TypesVideo output pin:
  • MEDIATYPE_Video, DXVA_ModeMPEG2_A (DXVA 1.0)
  • MEDIATYPE_Video, DXVA_ModeMPEG2_C (DXVA 1.0)
  • MEDIATYPE_Video, MEDIASUBTYPE_I420 (Software decode or DXVA2.0)
  • MEDIATYPE_Video, MEDIASUBTYPE_NV12 (Software decode or DXVA2.0)
  • MEDIATYPE_Video, MEDIASUBTYPE_YUY2 (Software decode or DXVA2.0)
  • MEDIATYPE_Video, MEDIASUBTYPE_IMC3 (DXVA2.0 only)
  • MEDIATYPE_Video, MEDIASUBTYPE_IMC4 (DXVA2.0 only)
  • MEDIATYPE_Video, MEDIASUBTYPE_S340 (DXVA2.0 only)
  • MEDIATYPE_Video, MEDIASUBTYPE_YV12 (DXVA2.0 only)

Line-21 output pin:

  • MEDIATYPE_AUXLine21Data, MEDIASUBTYPE_Line21_GOPPacket

Subpicture output pin:

  • MEDIATYPE_Video, MEDIASUBTYPE_AI44
  • MEDIATYPE_Video, MEDIASUBTYPE_ARGB32
  • MEDIATYPE_Video, MEDIASUBTYPE_ARGB4444
  • MEDIATYPE_Video, MEDIASUBTYPE_AYUV
Output Pin Interfaces

IAMVideoAcceleratorNotify (video output pin only)

IKsPropertySet

IMediaSeeking

IPin

IQualityControl

IVPConfig

Filter CLSIDCLSID_CMPEG2VidDecoderDS (defined in wmcodecdsp.h)
Executablemsmpeg2vdec.dll
Merit MERIT_NORMAL - 1
Filter Category CLSID_LegacyAmFilterCategory

 

Remarks

This filter has two input pins and three output pins.

Input pins:

  • Video input
  • Subpicture input

Output pins:

  • Video output
  • Line-21 output
  • Subpicture output

The filter does not create the subpicture output pin unless the video input pin is connected with a MEDIATYPE_DVD_ENCRYPTED_PACK media type.

MPEG-1/2 Support

For MPEG-1 and MPEG-2, the decoder supports the following formats:

Profiles/Levels

Any combination of the following profiles and levels:

  • Profiles: Simple, Main
  • Levels: Low, Main, High, High 1440
Chroma Formats4:2:0 chroma
Maximum Resolution1920 × 1088 pixels
DXVAThe decoder supports DirectX Video Acceleration (DXVA) version 1 and version 2.

 

The decoder does not support scalable bitstreams. The input must be an elementary video stream.

The decoder does not support 4:2:2 chroma formats.

H.264 Support

For H.264, the decoder supports the following formats:

Profiles/LevelsBaseline, Main, and High profiles, up to level 5.1. (See ITU-T H.264 specification for details.)
Chroma Formats4:2:0 chroma or monochrome
Minimum Resolution48 × 48 pixels
Maximum Resolution1920 × 1088 pixels
DXVAThe decoder supports DXVA version 2, but not DXVA version 1. DXVA decoding is supported only for Main-compatible Baseline, Main, and High profile bitstreams. (Main-compatible Baseline bitstreams are defined as profile_idc=66 and constrained_set1_flag=1.)

 

The decoder does not support Film Grain Technology.

For information about the H.264 media types, see H.264 Video Types.

Codec Properties

The input pins support the following property sets through IKsPropertySet:

The input pins support the following properties through ICodecAPI:

PropertyRequires
AVDecCommonInputFormat Windows Vista
AVDecVideoInputScanType Windows Vista
AVDecVideoPixelAspectRatio Windows Vista

 

The filter supports the following properties through ICodecAPI:

PropertyRequires
AVDecMmcssClass Windows Vista
AVDecVideoAcceleration_H264 Windows 7
AVDecVideoAcceleration_MPEG2 Windows 7
AVDecVideoDropPicWithMissingRef Windows 7
AVDecVideoFastDecodeMode Windows 7
AVDecVideoImageSize Windows 7
AVDecVideoSoftwareDeinterlaceMode Windows 7
AVDecVideoThumbnailGenerationMode Windows 7

 

Requirements

Minimum supported client

Windows Vista Home Premium, Windows Vista Ultimate, Windows 7 Home Premium, Windows 7 Business, Windows 7 Enterprise, Windows 7 Ultimate

Minimum supported server

None supported

Header

Wmcodecdsp.h

See also

DirectShow Filters
DVD Media Types
H.264 Video Types

 

 

Send comments about this topic to Microsoft

Build date: 3/6/2012

Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ
media Foundation sucks, give us DShow back on Windows 7!
lets face it, Microsoft have messed up again, we´re back in 1997 thanks to media foundation! no mpeg2 support, and what´s worse, dshow has been crippled. Thanks Microsoft, good move!
Repair options?
Hey all- Installing the last version of Carbon Coder effed up my Win7 x64 DTV-DVD filters (i'm 99% sure), but I'm unable to repair/restore them to how they were. The symptoms are that I can no longer watch broadcast digital television with windows media center (audio decodes, but video does not display) and I can no longer play mpeg-2 files with windows media player (same -- audio decodes but no video). Any idea how to restore the files/registry settings to default? Thanks -U
Higher resolutions
The filter has a limit on video resolution, but it's behavior is confusing. The filter accepts input media types and fails to decode video, without actually indicating an error condition.
Decoder delay
I am using the MPEG-2 Video Decoder to decode H.264 video streams.  It works well except I see it adds approximately 700ms delay to the video.  This is much worse than FFMPEG.  Is this delay unavoidable or is there a default setting I can change which will reduce this delay?