diff options
author | Uoti Urpala <uau@glyph.nonexistent.invalid> | 2008-12-27 17:40:57 +0200 |
---|---|---|
committer | Uoti Urpala <uau@glyph.nonexistent.invalid> | 2008-12-27 17:40:57 +0200 |
commit | c1b80dcbbb34d63df65c0f52c0bede66dfa225e8 (patch) | |
tree | 2b929ffa6f2896bdee81729ceab2b9651c62055f /DOCS/tech | |
parent | a76f59b0390a408de0a666cb1edfc578b734596a (diff) | |
parent | 4f6c6ba61a1fc213c7356b9ae1b9467f177a67a5 (diff) | |
download | mpv-c1b80dcbbb34d63df65c0f52c0bede66dfa225e8.tar.bz2 mpv-c1b80dcbbb34d63df65c0f52c0bede66dfa225e8.tar.xz |
Merge svn changes up to r28204
Diffstat (limited to 'DOCS/tech')
-rw-r--r-- | DOCS/tech/codec-devel.txt | 9 | ||||
-rw-r--r-- | DOCS/tech/release-howto.txt | 12 | ||||
-rw-r--r-- | DOCS/tech/win32-codec-howto.txt | 87 |
3 files changed, 96 insertions, 12 deletions
diff --git a/DOCS/tech/codec-devel.txt b/DOCS/tech/codec-devel.txt index a9ca1ddcad..86eb8db922 100644 --- a/DOCS/tech/codec-devel.txt +++ b/DOCS/tech/codec-devel.txt @@ -49,8 +49,8 @@ data, search for sample media of both types. If a video codec is known to work at 7 different bit depths, then, as painful as it may be, do what you can to obtain sample media encoded for each of the 7 bit depths. -- Latest CVS snapshot: It's always useful to develop code for the very -latest development version of MPlayer. Be sure to update your local CVS +- Latest Subversion snapshot: It's always useful to develop code for the very +latest development version of MPlayer. Be sure to update your local Subversion copy often. - General programming knowledge, working Linux development environment: I @@ -143,7 +143,7 @@ with the parameters passed into the decoding function (if you set it up to take those parameters). Such data should match up. If it doesn't, issue a warning and make an executive decision in the code about which data to believe (personally, I always lend more weight to the data that was passed -into the decoder function, the data that comes from the container file's +into the decoder function, than the data that comes from the container file's header). If there's supposed to be a magic number embedded in, or computed from, the chunk's header, issue a warning if it isn't correct. @@ -190,7 +190,8 @@ files: - ad.c or vd.c Of course, you will need to include your newly-created file(s): vd_<name>.c -OR- ad_<name>.c. If you contribute enough decoders, the -development team may even grant you write privileges to the CVS repository. +development team may even grant you write privileges to the Subversion +repository. 5) Wait for bug reports to start rolling in You may think you're finished when you release the codec and if you're diff --git a/DOCS/tech/release-howto.txt b/DOCS/tech/release-howto.txt index 504f522d9e..5cf0fef514 100644 --- a/DOCS/tech/release-howto.txt +++ b/DOCS/tech/release-howto.txt @@ -7,22 +7,18 @@ preparations: all docs are up to date, etc. - Verify man page, remove obsolete options, mention new ones. - Ask translation maintainers to update their help_mp*.h file. -- Update the ChangeLog file (according to CVS log), ask other developers +- Update the ChangeLog file (according to Subversion log), ask other developers to verify their parts, etc. Ask Diego to spellcheck it. - Consult at -dev-eng about unstable parts of the code which should be disabled for the release. - Find a codename for the release create the release tree: -- tag cvs with release name +- tag Subversion with release name - update release.sh script with version number ***the following steps are done automatically by release.sh script*** -- cvs checkout the mplayer src tree -- check out libavcodec and libavformat from FFmpeg CVS -- remove the CVS subdirs: - find main -name CVS -exec rm -rf {} \; -- remove the .cvsignore files: - find main -name .cvsignore -exec rm {} \; +- checkout the mplayer src tree +- check out FFmpeg subdirs - remove obsolete DOCS translations, help files - replace version.sh with this (change version number too...): diff --git a/DOCS/tech/win32-codec-howto.txt b/DOCS/tech/win32-codec-howto.txt new file mode 100644 index 0000000000..cbf13cf72e --- /dev/null +++ b/DOCS/tech/win32-codec-howto.txt @@ -0,0 +1,87 @@ +============================ +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: + +UNKNOWN video codec: HFYU (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. In our +case, the 'system.ini' contains this information in a line that reads: + +VIDC.HFYU=huffyuv.dll + +So you need the 'huffyuv.dll' file. Note that the audio codecs are +specified by the MSACM prefix: + +msacm.l3acm=L3codeca.acm + +This is the MP3 codec. + + + +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 either 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... |