mirror of https://github.com/mpv-player/mpv
178 lines
5.5 KiB
Plaintext
178 lines
5.5 KiB
Plaintext
|
|
Status of codecs support:
|
|
=========================
|
|
|
|
If you have sample files for untested codecs, or want a new codec to be
|
|
added, contact us! See bellow (after the codecs listing) the details!
|
|
|
|
Video codecs:
|
|
~~~~~~~~~~~~~
|
|
Built-in native codecs:
|
|
|
|
- MPEG 1/2 (no fourcc)
|
|
libmpeg2: works, YUV (YV12) supported, with optional postprocessing!!!
|
|
- OpenDivX (DIV1,DIVX)
|
|
decore: works, YUV (YV12) supported, postprocessing supported
|
|
|
|
Fully functional Win32 VfW/DShow codecs:
|
|
|
|
- M$ MPEG4 v1, v2 (MPG4,MP42):
|
|
mpg4c32.dll: works, YUV supported.
|
|
- M$ MPEG4 v3 / DivX ;-) / AngelPotion (MP43,DIV3,DIV4,DIV5,DIV6,AP41)
|
|
divxc32.dll: works, YUV supported.
|
|
divx_c32.ax: works, YUV and postprocessing supported.
|
|
- Indeo Video 5.0: (IV50)
|
|
ir50_32.dll (VfW): works, YUV supported.
|
|
ir50_32.dll (DShow): works, YUV supported.
|
|
- Cinepak Video: (CVID)
|
|
iccvid.dll: works, YUV supported.
|
|
- Microsoft Video v1.0 (CRAM)
|
|
msvidc32.dll: works, no YUV
|
|
- ATI VCR-2: (VCR2)
|
|
ativcr2.dll: works, YUV supported
|
|
- Motion JPEG (MJPG)
|
|
m3jpeg32.dll: can't load (segfault)
|
|
mcmjpg32.dll: works, YUV supported
|
|
m3jpegdec.ax: works, YUV supported
|
|
- Windows Media Video 7 (WMV1)
|
|
wmvds32.ax: works, YUV supported
|
|
- I263: (I263)
|
|
i263_32.drv: works, YUV supported
|
|
- DV - Sony Digital Video (dvsd)
|
|
?
|
|
- ASUS ASV2: (ASV2)
|
|
asusasv2.dll: works, image upside-down on RGB (YUV ok!)
|
|
|
|
Problems:
|
|
|
|
- Indeo Video 4.1: (IV41)
|
|
ir41_32.dll: works, no YUV, image upside-down
|
|
- Indeo Video 3.2: (IV32)
|
|
ir32_32.dll: works, no YUV, image upside-down
|
|
- ATI VCR1: (VCR1)
|
|
ativcr1.dll: can't load (16-bit DLL)
|
|
- TrueMotion 2.0: (TM20)
|
|
tm20dec.ax: dest format not accepted
|
|
- ZLIB
|
|
avizlib.dll: YUY2 only (no RGB), Called unk_RegEnumValueA -> endless loop
|
|
- MSZH
|
|
avimszh.dll: RGB only (no YUV), Called unk_RegEnumValueA -> endless loop
|
|
- MWV1: calls many unk_ functions and then segfaults.
|
|
|
|
Not tested:
|
|
|
|
- ASUS ASV1: (ASV1)
|
|
asusasvd.dll: ??? not tested
|
|
- Motion Wavelets: (MWV1)
|
|
icmw_32.dll: not tested (no sample file)
|
|
- Indeo Video 3.1: (IV31)
|
|
ir32_32.dll: not tested (no sample file)
|
|
- Windows Media Video 8 (WMV2)
|
|
wmv8ds32.ax: not tested (no sample file)
|
|
- I420: (I420)
|
|
i263_32.drv: not tested, but should work (no sample file)
|
|
- m261: (m261)
|
|
msh261.drv: not tested, what's this?
|
|
|
|
Audio codecs:
|
|
~~~~~~~~~~~~~
|
|
Built-in native codecs:
|
|
|
|
- Uncompressed PCM (0)
|
|
- Uncompressed DVD PCM: (0x10001)
|
|
- MPEG layer 2 and 3: (0x50, 0x55)
|
|
mp3lib, based on mpg123 (sometimes segfaults, then use ACM, see below)
|
|
- AC3: (0x2000)
|
|
libac3
|
|
- aLaw audio: (0x6)
|
|
aLaw codec from xanim sources
|
|
- MS-GSM: (0x31,0x32)
|
|
xa_gsm from avifile sources
|
|
|
|
Fully functional Win32 ACM/DShow codecs:
|
|
|
|
- Windows Media Audio / DivX audio (0x160, 0x161)
|
|
divxa32.acm: works
|
|
- MS ADPCM (0x2)
|
|
msadp32.acm: works
|
|
- MPEG layer 3: (0x55)
|
|
l3codeca.acm: works (or you can use the built-in 3dnow-optimized codec)
|
|
- VoxWare Metasound: (0x75)
|
|
voxmsdec.ax: works
|
|
- MS-GSM: (0x31,0x32)
|
|
msgsm32.acm: works (or you can use the built-in codec)
|
|
- IMA ADPCM (0x11)
|
|
imaadp32.acm: works
|
|
|
|
Problems:
|
|
|
|
- uLaw audio: (0x7)
|
|
mess...
|
|
- ACELP.net Sipro Lab Audio (0x130)
|
|
doesn't work: unk_ ...
|
|
|
|
Not tested:
|
|
|
|
- IMC: (0x401)
|
|
imc32.acm: not tested (no sample file)
|
|
|
|
|
|
Extracting codecs from Win32
|
|
============================
|
|
|
|
1. VfW
|
|
~~~~~~
|
|
VfW (Video for Windows) is the old Video API for Windows. Its codecs have
|
|
the .DLL or (rarely) .DRV extension.
|
|
If MPlayer fails with your AVI:
|
|
|
|
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 we know this, we'll
|
|
have to find out which DLL Windows loads in order to play this file. In our
|
|
case, the system.ini contains this (with many others):
|
|
VIDC.HFYU=huffyuv.dll
|
|
So we'll need the huffyuv.dll file. Note that the audio codecs are specified
|
|
with the MSACM prefix :
|
|
msacm.l3acm=L3codeca.acm
|
|
This is the MP3 codec.
|
|
|
|
So, now we have all the info needed (fourcc, codec file, sample AVI), submit
|
|
your codec support request in mail, and upload these files to the FTP:
|
|
ftp://thot.banki.hu/MPlayer/incoming/<codecname>/
|
|
|
|
|
|
2. DirectShow
|
|
~~~~~~~~~~~~~
|
|
DirectShow is the newer Video API, which is even worse than its predecessor.
|
|
Things are harder with DirectShow, since
|
|
- system.ini doesn't contain the needed information, instead it's stored in
|
|
the registry :(
|
|
- we'll need the GUID of the codec.
|
|
|
|
So let's search that goddamn registry..
|
|
- Start 'regedit'
|
|
- press ctrl-f, disable the first two checkbox, and enable the third. Type
|
|
the fourcc of the codec. (for ex.: TM20)
|
|
- you should see a field which contains the path and filename
|
|
(for ex. : C:\WINDOWS\SYSTEM\TM20DEC.AX)
|
|
- now that we have the file, we'll need the GUID. Try searching again, but
|
|
now we'll search for the codec's name, not the fourcc. Its name can be acquired
|
|
when Media Player is playing that file, by checking File/Properties/Advanced.
|
|
If not, bad luck ;) Try guessing.
|
|
(for ex. search for : TrueMotion)
|
|
- if found (in registry), there should be a FriendlyName field, and a CLSID
|
|
field. Write down that 16 byte of CLSID, this is the GUID required by us.
|
|
|
|
NOTE : if searching fails, try to enable all the checkboxes.. you may have
|
|
false hits, but maybe you'll have the right, too...
|
|
NOTE : dump that M$ shit.
|
|
|
|
So, now we have all the info needed (fourcc, GUID, codec file, sample AVI),
|
|
submit your codec support request in mail, and upload these files to the FTP:
|
|
ftp://thot.banki.hu/MPlayer/incoming/<codecname>/
|
|
|
|
|
|
Gabucino & A'rpi
|