Codec issues abound.... the newbie runs into
crashes and hangs, and resolves them by having to find some
codec(s) to take out of the equation, not
necessarily knowing it's a codec or why it needs to be
done... the intermediate user is comfortable making movies and can talk
about codecs, but understands little if anything about them... the
advanced user is looking for a better codec or learning how to tweak the
codec settings to get the best playing movies.
Most multimedia files are compressed. Uncompressing them on the fly
as they play requires decompression codecs. Rendering a
new file requires compression codecs. You
may not know which ones are needed or being used, and probably don't
care as long as things go well.
Codecs are usually files you don't open directly... they can be
an .ax or a .dll file, a program
module used by the software that you open.
There are a number of utilities that help you assess the codecs needed to
open a file... the GSpot Codec Information Appliance by Steve
Greenberg is one of the better ones.
GSpot started as an app to assess avi files. Its latest
beta version has expanded to include MPEG files.
The
screen shot at the left shows it with an MPEG-1 VCD file
open, one I made with TMPGEnc.
GSpot says it's an MPEG-1 VCD
file with a standard aspect ratio of 4:3, that the filters used
to play it are in the quartz.dll file (lingering over the items in the two lines
of the proposed codec solutions info box at the lower right keeps pointing
to that DLL), and testing with it is successful as it plays fine in
the monitor when the number 2 button is selected.
Quartz.dll is one of the files in the c:/windows/system32 folder. Check
its properties and you'll see it's a Microsoft DirectShow
Runtime file. If you had a problem using this MPEG-1 file, the
Quartz.dll would be a key file to check for proper version, corruption, etc.
GSpot's info would lead you to it. That's why you use GSpot.
In
this newsletter I'll illustrate the complexity
of codec-related issues by using a real world video file that
needed conversion, and almost didn't make it... and then use
GSpot to look at a variety of sample files.
I
won't take you into the technology of how codecs work, or
deeply into any of the hundreds or thousands of codecs.
... before getting
into it, here are a
few notes...
Notes...
I installed the beta 1
version of Vista on one of my desktop computers, and checked
with Microsoft to confirm its OK to take screen shots and
publish info about what I see. It doesn't need a full newsletter to tell
you that the Windows Media Player in it is the same version 10 you are already
using, and Movie Maker is essentially the same version 2.1 as we've been using.
It's 2.1.4029.0 of 7/20/05.
I'll let you know more when I see or
hear about the beta 2 version. One new thing... a version 7 beta 1 of
the Internet Explorer.
My Toshiba laptop
was in Memphis on its way home from the CompUSA repair facility in
Houston... it'll be here Tuesday with a new DVD/CD drive and TV Tuner
(both of those were replaced on the last trip just 3 months ago). It's
actually a good thing for this newsletter to be working on my older Dell
laptop which has a basic operating system with a minimal number
of codecs. It's easier to find audio and video files that won't run, so I
can collect more interesting screen shots of error messages...
I finished my first reading
of Learning VirtualDub this week. Having written the first
chapter which introduced the whole book, I was more than curious to read the
rest to see the rest of the story.. The 10th and final chapter was about
codecs and relates to this newsletter issue. The book has more
than enough good material for me to refer to on a regular basis.
Mostly what it does is inspire me to try lots of new things I've been
thinking about but hadn't gotten around to trying.
.... on to the main
topic
Downloading and Installing
GSpot
Here's a GSpot download
link. I downloaded fresh copies of the latest stable
version v2.21 of 17 May, 2003, and the v2.52 beta version. The files
are small, less than 200 KB.
I'll use the beta version which includes the
assessment of MPEG files.
The license includes a statement about
distribution: You may distribute an unlimited number of exact,
unmodified, individual copies of the SOFTWARE to anyone you wish... by
making such copies available for download (e.g., via the Internet, on-line
services, bulletin boards, etc.).
The _read_me file includes a
very short Beginners Guide to Using
GSpot:
1. Use File > Open to open the AVI file of
interest (or drag & drop the file into GSpot).
2. Look at "Codec" section in "Video Format". If
the "Status" says "not installed", you will probably have to obtain the codec
shown. The same goes for the "Audio Format" section - if the appropriate
"audio codec" is not installed, you may get no sound.
The first step needs expansion to include
MPEG files... I agree with drag and drop being a great way to open a video file
in it.
We'll go into it in a bit more depth than the beginner's
guide...
There's some interesting reading on the
GSpot website, including the mini-faq. The first question kind of
sums up what GSpot is all about.
| My video doesn't play - how do I
use GSpot? |
Test Files...
We'll check GSpot using some sample
files... WMV files from Movie Maker and Photo Story, types I and II
DV-AVI files from MM1 and MM2, and a little collection of test files
from camcorders, digicams, cell phones, and ones made with
other software.
I've been collecting samples as I come across
them... to assess the types of files they really
are underneath the file extensions, the codecs needed to play or use
them in Movie Maker, and the software that can successfully convert them to
usable AVI files as needed... my goal is to get them into Movie
Maker for editing, not just to view them in a player. GSpot comes in
handy often.
Before checking the test files, I'd like to take
you through the story of a particular one... how it acted and how it got
resolved.
A Real-World
Challenge...
Here's the long story about a file I
wrestled with recently. It illustrates many of the issues you can run into when
trying to assess and convert a file. Even with the
needed specialized codec provided by the hardware
supplier, success wasn't guaranteed.
Codecs don't always act like you want them to. If
you can play a file, it doesn't mean you can convert it or use it in a
video editing environment.
Up front, I thought the file would
be easy to convert.
It was a test ASF clip I was helping someone
convert, from a Samsung DV Recorder SCN-103. Samsung
tech support had sent a copy of the needed G 726
decoder.
I tried playing it with Windows Media Player
10 before installing the codec, to see if I really needed it.
The error message at the above right confirmed I
needed something more... the G 726 is an audio codec. Audio is often the
more difficult of the two streams (video and audio) to deal
with.
Movie Maker 2's Help File says supported file
types include: Video files: .asf,
..avi, .m1v, .mp2, .mp2v, .mpe, .mpeg, .mpg, .mpv2, .wm, and .wmv
... this was an asf but, when trying
to import it into MM2 without the codec installed, the error message
was:
... and the clip didn't make it into the
collection.
What the MM2 help file really means is that it
supports ASF files that align with Microsoft's version of ASF files, when
it's used as the wrapper for WMV and WMA files... not newer files that
might use the file extension with other type files.
I installed the G 726
codec, but MM2.1 continued
to get the error message, and the clip couldn't make it to a
collection.
MM1 imported it into a collection and showed an
appropriate thumbnail, but when I tried to preview the
clip, an error message said "an invalid media type was
specified".
I looked at
it with GSpot... which expects an ASF file to be a
container for our familiar WMA and WMV files. GSpot and many open
source apps often don't handle Microsoft file types, and
won't provide complete info about the file inside the wrapper.
Fishing around with GSpot... a partial
render failure was noted when checking which codecs
could play it...
After the partial render failure, I tested it
further with GSpot and saw the visual playing
in the monitor...
but I didn't hear the audio, even
with the specialized G 726 audio codec installed.
GSpot was not being fully
effective at assessing or playing the clip... after all, it was
tagged as an .asf.
I tried playing it in Windows Media Player
10... with the codec installed, I was able to both see and hear it...
this was the first time I heard its audio. But the viewing success was short
lived... as soon as the clip finished playing, the error message below
popped up.
Getting it to work in Movie
Maker 2 now seemed at best a remote a possibility. Conversion to
an AVI or WMV file was my only hope.
I tried converting it with the usual tools... TMPGEnc
and RadVideo Tools. I could get the video, but kept
striking out with the audio. These
utilities didn't effectively use the new codec.
I finally succeeded by converting it to a WMV
file using the Windows Media Encoder...
I've seldom had to give up when
converting other files, but I was about ready to quit with this
one...
What does this mean? Here are a few
things:
-
An older ASF file extension can
contain something other than a Windows media file inside. File
extensions don't always tell you the type of file inside.
-
A needed codec can be obtained from a camera
or camcorder supplier, or from an internet site
-
Even with the codec installed, a file can
play in a player, but not import into Movie Maker. A codec can
dictate the extent it can be used... it might let you play a file, but
not edit it...
-
Codec issues can bite you before, during,
or after playing a file... I often hold my breath until the conversion is
over.
-
Assessing a file and the codec needed isn't
always a straight-forward logical task. There's a lot to learn... often by
checking and testing... and then doing it again with a different
tool
-
Conversion of a problematic file is the best
course of action... don't expect to get it to work in Movie Maker just because
you got the codec you were missing
-
The last thing you try in your conversion toolkit
often works... as you only need one conversion tool to work, the one
that does is usually the last one you check.
-
You can successfully convert a problem
file... try something else if you think you can't.
-
Once you're converted one, the rest of the clips
from the same source will be easy...
-
GSpot isn't the magical all-purpose tool... it's
one of many. It won't assess Microsoft and some other file types... but
it's still evolving.
.. now it can do AVI and
MPEG.
-
Not only can GSpot have difficulty assessing
some files, it can also produce some crashes as it
attempts to see which codecs work with a file.
The picture at the left shows the message GSpot provides after
one such crash...
I consider crashes while assessing problem files to be
kind of normal and expected. A crash can confirm that the file or codec is a
problem, and not your personal skills.
If you don't like or want crashes, GSpot gives some Post
Crash info to help you avoid further unexpected ones.
Enough of the negatives... codecs are
necessary and work well for the most part. And GSpot is a great
assessment tool. Let's see what Spot reports when it checks various
files.
Checking Some Files
with GSpot...
GSpot's import window says it supports AVI, MPG,
MPEG, and VOB files. Let's check some of them and others, starting
with files from Microsoft or Microsoft software that GSpot isn't expected
to support.
ASF - the sample video that comes with Movie Maker
is an ASF... I'll open it.
The two columns of buttons at the left are for
GSpot checks and tests versus Microsoft standard ones... GSpot checks the video
and audio streams separately while Microsoft checks them together... the ones
that are bold are the current active choices.
Press the square button in the MS column with
number 1 on it to check the file using Microsoft's standard rendering
tests.
The first line shows the sequence that the video
track is played and the second line the audio. Linger over any item in the
sequence: it'll turn yellow and a tool tip will provide added info. Reading
across the video line, and then the audio:
Src = source file path and name
A = WMMedia Subtype 1... WMV1
WMVideo Decoder = qasf.dll > wmvdmod.dll
B = Media Subtype RGB565
Video Renderer = quartz.dll
Src = source file path and name
A = WMAudio V2
WMAudio Decoder = qasf.dll > wmadmod.dll
B = Media Subtype PCM
Direct Sound Device =
quartz.dll
Pressing the square button with number 2 on it
tests the actual playing of the file in the GSpot monitor. If it looks
and sounds good, it passes the tests... and it does for this
file.
If you had a problem using this file, the suspects
would include the qasf.dll, wmvdmod.dll, wmadmod.dll, and quartz.dll files noted
in the solution info.
Note that the GSpot proposed solutions and test
buttons are grayed out when the ASF or WMV files are opened. The same happens
when a type I DV-AVI file is opened.
WMV - a rendered movie
from Movie Maker 2 shows the same kind of info as the ASF file except that
the WMMedia Subtype 3 was noted instead of Subtype 1.
DV-AVI type I or II - GSpot
assesses and plays the type I file from MM2, but provides little
info... whereas the info for a type II file from MM1 is robust. Like
other apps we use, GSpot is more adapt at using the type II
files.
The previously grayed out GSpot test buttons are
active for the type II files... and interestingly the proposed GSpot solution
includes use of the Panasonic DV codec... but it can't follow through and play
that solution, getting an error message (not a crashing error, just a note in
the proposed solutions field about why it doesn't work).
Now to check some files made by software other
than Microsoft
MPEG-4 - an AVI file made by
MovieXone... interesting as it's the first file that the
proposed GSpot solutions can be followed up with an actual test. See that the
GSpot video and audio stream solution buttons are active, in addition to the
Microsoft button.
The GSpot video and audio tests are separate
tests... whereas the Microsoft test plays both streams together... but they all
play OK.
The info at the left is the video codec info
for the MPEG-4 file made by MovieXone... it
says the codec is installed on this Dell laptop, and the tests
work.
The info at the right is the video codec
info for a Stoik MPEG-4 file. GSpot says correctly
that I don't have an installed Divx codec... and to confirm it, my pressing
the test button resulted in GSpot crashing.
MOV QuickTime Files - a couple
files made by Premiere had no info provided and GSpot
couldn't propose solutions or test them.
MPEG-1 - an MPG file made by
TMPGEnc had info, both GSpot and Microsoft solutions, and
played fine. This was the VCD file used to get the snapshot for the
introduction to this newsletter.
Another VCD file made by avi2vcd
had the same results.
MPEG-2 for SVCD - an MPG file made
by TMPGEnc... showed the info but the codec isn't installed on
this Dell laptop to test it.
MPEG-2 for DVD - an MPG file made by
Pinnacle7...
GSpot provided full info similar to the SVCD
file, but couldn't confirm the solution by testing as the codec isn't
installed.
I'm including the screen shot to show you the
amount of info provided.
Digicam Files...
Canon A70 - AVI file which is a
Motion JPEG.
The GSpot solution tested fine... but the Microsoft
solution resulted in a message from GSpot that Direct Show crashed while trying
to render the file.
It also provided this tidbit "Although GSpot was
able to intercept the crash, attempts to identify the codec which caused it have
failed."
Casio EX-Z750 - AVI file
needing a fully compliant MPEG-4 v2 simple profile codec, which
is installed. The checkout and testing worked well.
Olympus C-5050 (my camera) - AVI
file needing the Cinepac codec by Supermac... both GSpot and
Microsoft solutions and testing worked well.
Olympus C-770 - MP4 file... minimal info in
GSpot with no proposed solutions or test.
Cell Phone Files...
A couple test files were 3GP files with
minimal/no info provided.
Have a great week...