Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

MPEG-4 playback issues with streams containing sprite encoding


Symptoms

Consider the following scenario:

When using hardware accelerated video decoding (UVD) and playing an AVI video file that contains a MPEG-4 ASP video stream on Windows Media Center and Media Player, if the bit stream contains Sprite encoding, the video might appear corrupted or blocky.  


↑ Back to the top


Cause

When using Microsoft's Media Foundation Transform (MFT) the file reader negotiates with the decoder to determine if it supports the format for the input video stream.  This is done by passing in the header information to the decoder and it will either accept or reject the given content.  The problem seen is with the AVI Bitstream reader.  This component only sends limited information such as width, height and format type (MPEG-4, Xvid etc) instead of the full header.  The rest of the header contains specific information about the video stream such as the presence of sprites, global motion compensation, etc.

Media applications such as Windows Media Center or Windows Media Player use the Media Foundation framework to allow third party hardware MFTs to coexist with software MFTs.  If the hardware MFT does not support a certain format or feature it can communicate with the framework to allow the playback to occur with the software MFT.  However the fallback can only occur during format negotiation and not once the connection is established.  In this case a hardware MFT does not have enough information to make a determination if it supports the given format hence the playback continues with the hardware MFT and the video appears blocky or corrupted.

↑ Back to the top


Resolution

If your MPEG-4 ASP content is contained in an AVI wrapper and it contains sprites, you should transcode the file so that it's in a MPEG-4 container such as .mp4.  Another option would be to transcode the content so that it does not contain sprites.

↑ Back to the top


Keywords: kb

↑ Back to the top

Article Info
Article ID : 2540167
Revision : 1
Created on : 1/7/2017
Published on : 4/21/2011
Exists online : False
Views : 123