I found a post to another group probably giving the solution to my problem. I
sincerely thank this Adam Albright for writing such an excellent story.
Here is what he wrote:
Subject: Re: playing avi files in media player 3/29/2007 5:07 PM PST
By: Adam Albright In: microsoft.public.windows.vista.general
On Thu, 29 Mar 2007 16:57:28 -0500, "LaRoux" <email@example.com>
>If it's divX codec for WMP you want, go to www.divx.com and download the
>divX for windows package. Several components aren't Vista compatible yet but
>the codec is.
The point is Media Player won't accept or stumbles on some codecs even if
they're installed on your system. I can download some files, ask Media Player
to play them and this is what happens:
Example file claims it is AVI
1. Media Player starts up, shows "acquiring codec" in lower left.
2. About 20 seconds later it says "codec acquired".
3. It starts to play the video portion only, not the audio.
Now here's the fun part. What did Media Player just say? It acquired the
codec. So you would think if I click on the file a second time it would just
start to play right? No, it again says acquiring codec, another 20 seconds
goes by, then again it plays just the video portion. If I repeat this
exercise in stupidty ten times then Meida Player will say "acquiring codec"
10 times each time again going out on the web looking for another copy of the
same codec it already obviously has and again saying it is "installing" it,
but never is it able to play the audio portion.
Now the funniest part of all is I can open this video file in any one of my
other players and it plays fine, BOTH the audio and video tracks, and no
player except for brain dead Media Player needs to acquire any new codec off
Lets have even more fun. I open the example file in GSpot. (version
2.70a)Surprise it isn't a AVI like the file pretends, it is a divX file.
Since AVI is a wrapper, Media Player should be smart enough to read the file
header like all my other players do before trying to play or jumping to
conclusions it is a avi file. But alas, we're talking Microsoft software,
which we all know isn't too smart.
Lets look deeper. According to Gspot my system has no less then 6 codecs
that can play the video stream in this file. Since Media Player did play the
video portion it obviously used one of these, but apparently can't remember
since it keeps going out to the web to get a fresh copy every time I ask
Media Player to play it.
The real problem with this file is Media Player won't play the audio track.
Let's see if we can figure that out. Well guess what, according to GSpot it
says among other codecs Windows Media audio codec and other compatable
Microsoft audio codecs are already installed. This obviously must be so since
all my other players can play this file fine accessing these codecs. Why
can't Media Player?
Deeper into the rabbit hole:
Gspot has a tool that tests the playing of many kinds of video/audio files.
It will look at your system and see which files should play the file. Seems
simple enough. Gspot says file should play using codecs already there. What's
that? Well, still deeper, if we click on that we learn the file that drives
audio is called msaud32.acm and quartz.dll. Both of these should be in the
Windows system 32 folder. Lets check. Both are. There are several other
files, installed as other codecs, to avoid getting even more muddy, lets skip
Remember GSpot can "render" a audio/video file. Not is the usual sense as it
normally pertains to video editing, but a simpler meaning it that it can hook
to Direct Show routines and attempt to play as if it was a player. Ok, lets
try that. Now we're getting somewhere. GSport reports "partial render
failure, video could be rendered, but audio could not. Hmm we already knew
that, can Gspot tell us more?
You bet. At this screen it just states a memory address with "unknown"
behind it which just means something is preventing Media Player from playing
the audio track.
I don't give up easy, have you noticed?
Gspot has another function called VGS that stands for Visual GOP Structure.
First you need to learn what a GOP is. Still deeper into the rabbit hole.
GOP is a video term that stands for Group Of Pictures. All compressed videos
are comprised of different kinds of frames. These frames have different
construct. You have 'I' frames, which refer to some intra frame image, these
are based on actual data. Then you have 'P' frames which are actually
predicted images from a construct of a prior actual ('I') video frame that
the codec just guesses with and makes a I frame out of which is a educated
guess of what the frame should be which reduces a lot of duplication and in
part is what allows a file to get compressed. And lastly we have 'B' frames
which are similar to P frames but forward or backward predictions of motion.
All very interesting but beyond the scope of what we're trying to figure out
right now. The point is GSpot shows a visual representation of the GOPs. The
usefullness if this is it should find gaps or corruption if it exists in a
So does my test file have corruption in it? Yes! The GOP visual shows
several flaws or corrupt frames, all happen to be I frames. This is likely
what is preventing Media Player from playing the audio portion, since the
first frame in this video is one that happens to be corrupt. Apparently Media
Player was able to get over the hump and play the video track anyway, but
failed to play the audio for this reason, while other players apparently were
smart enough to skip over the file corruption.
So now what? Well it doesn't really matter to me since I have other
"smarter" players. But maybe we can fix it. Since corrupt files are a fact of
life when downloading from the Internet for a whole host of reasons if helps
to have some "repair tools" One such application is called Video Fixer. This
is a class of application that can quickly scan a file see corrupt or missing
segements if the file has been split and you jointed it, then make a offset
adjust so it in effect rewrites the file skipping over the bumps. So I try
Now finally Media Player can play the file, both video and audio.