summaryrefslogtreecommitdiffstats
path: root/DOCS/OUTDATED-tech/win32-codec-howto.txt
diff options
context:
space:
mode:
Diffstat (limited to 'DOCS/OUTDATED-tech/win32-codec-howto.txt')
-rw-r--r--DOCS/OUTDATED-tech/win32-codec-howto.txt118
1 files changed, 118 insertions, 0 deletions
diff --git a/DOCS/OUTDATED-tech/win32-codec-howto.txt b/DOCS/OUTDATED-tech/win32-codec-howto.txt
new file mode 100644
index 0000000000..458a9191b3
--- /dev/null
+++ b/DOCS/OUTDATED-tech/win32-codec-howto.txt
@@ -0,0 +1,118 @@
+============================
+Win32 codecs importing HOWTO
+============================
+
+This document describes how to extract the information necessary to hook
+up Win32 binary codecs in MPlayer from a Windows system. Different methods
+exist depending on which video API your codec uses and which Windows
+version you have.
+
+If you have gathered all the necessary information (fourcc, GUID, codec file,
+sample file) as described below, notify the mplayer-dev-eng mailing list.
+If you want to add a codec yourself, read DOCS/tech/codecs.conf.txt.
+
+
+
+VfW codecs
+~~~~~~~~~~
+
+VfW (Video for Windows) is the old video API for Windows. Its codecs have
+the '.dll' or (rarely) '.drv' extension. If MPlayer fails at playing your
+AVI with this kind of message:
+
+VIDEO: [HFYU] 352x288 24bpp 25.000 fps 4321.0 kbps (527.5 kbyte/s)
+Cannot find codec matching selected -vo and video format 0x55594648.
+
+It means your AVI is encoded with a codec which has the HFYU fourcc (HFYU =
+HuffYUV codec, DIV3 = DivX Low Motion, etc.). Now that you know this, you
+have to find out which DLL Windows loads in order to play this file.
+You can find the VfW codec by searching the internet for e.g. VIDC.HFYU.
+
+In our case, the 'system.ini' also contains this information in a line that reads:
+
+VIDC.HFYU=huffyuv.dll
+
+So you need the 'huffyuv.dll' file.
+
+
+
+ACM Codecs:
+~~~~~~~~~~~~
+MPlayer may fail at playing the audio in your file with this message:
+
+Cannot find codec for audio format 0x55.
+Audio: no sound
+
+MPlayer calls this the TwoCC format identifier. From the TwoCC list we find:
+
+0x0055 MPEG-1 Layer 3 (MP3)
+
+If you are lucky, you can then just search the internet for "codec acm"
+e.g. "mp3 acm". Or if the codec is already installed on Windows,
+it will show up in the system.ini as:
+
+msacm.l3acm=L3codeca.acm
+
+Note that the audio codecs are specified by the MSACM prefix:
+
+
+
+DirectShow codecs:
+~~~~~~~~~~~~~~~~~~
+
+DirectShow is the newer video API, which is even worse than its predecessor.
+Things are harder with DirectShow, since 'system.ini' does not contain the
+needed information, instead it is stored in the registry and we need the
+GUID of the codec.
+
+
+New Method:
+-----------
+
+Using Microsoft GraphEdit (fast)
+
+- Get GraphEdit from the Microsoft SDK, DirectX SDK or doom9.
+- Start 'graphedit.exe'.
+- From the menu select "Graph -> Insert Filters".
+- Expand item "DirectShow Filters".
+- Select the right codec name and expand item.
+- In the entry "DisplayName" look at the text in winged brackets after the
+ backslash and write it down (five dash-delimited blocks, the GUID).
+- The codec binary is the file specified in the "Filename" entry.
+
+If there is no "Filename" and "DisplayName" contains something like
+'device:dmo', then it is a DMO-Codec.
+
+
+Old Method:
+-----------
+
+Take a deep breath and start searching the registry...
+
+- Start 'regedit'.
+- Press "Ctrl-F", disable the first two checkboxes, and enable the third.
+ Type in the fourcc of the codec (e.g. "TM20").
+- You should see a field which contains the path and the filename (e.g.
+ "C:\WINDOWS\SYSTEM\TM20DEC.AX").
+- Now that you have the file, we need the GUID. Try searching again, but
+ now search for the codec's name, not the fourcc. Its name can be acquired
+ when Media Player is playing the file, by checking
+ "File -> Properties -> Advanced".
+ If not, you are out of luck. Try guessing (e.g. search for TrueMotion).
+- If the GUID is found you should see a "FriendlyName" and a "CLSID" field.
+ Write down the 16 byte CLSID, this is the GUID we need.
+
+If searching fails, try enabling all the checkboxes. You may have
+false hits, but you may get lucky...
+
+
+
+Tips:
+~~~~~~~
+If you get an error loading a new codec, it may need some more files to work.
+Start the filemon utility before loading MPlayer to find out which DLLs are
+trying to be loaded.
+
+Your codec may load some external DLL libraries. If the codec is already
+installed in Windows, run listdlls wmplayer.exe while Windows Media
+Player is playing your file to find out which.