Mercurial > mplayer.hg
view DOCS/CODECS @ 237:77460b51c9c1
finished DirectShow audio code
author | arpi_esp |
---|---|
date | Wed, 28 Mar 2001 21:45:12 +0000 |
parents | 2a94614c1d51 |
children | d734e84b4eea |
line wrap: on
line source
Status of codecs support: ========================= If you have sample files for untested codecs, or want a new codec to be added, contact us! (for new codecs we need the DLL/AX file and a sample AVI) 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 ;-) (MP43,DIV3,DIV4,DIV5,DIV6) 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): not tested - 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 - Windows Media Video 7 (WMV1) wmvds32.ax: works, YUV supported 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 - ASUS ASV1: (ASV1) asusasvd.dll: ??? not tested - ASUS ASV2: (ASV2) asusasv2.dll: loads, image upside-down and very pixelized (no YUY2, but YVYU) - ATI VCR1: (VCR1) ativcr1.dll: can't load (16-bit DLL) - I263: (I263) i263_32.drv: segfault - TrueMotion 2.0: (TM20) tm20dec.ax: segfault Not tested: - Motion Wavelets: (MVW1) icmw_32.dll: not tested (no sample file) - Indeo Video 3.1: (IV31) ir32_32.dll: not tested (no sample file) - AngelPotion MPEG-4: (AP41,AP42) APmpg4v1.dll: not tested - Windows Media Video 8 (WMV2) wmv8ds32.ax: not tested (no sample file) - DV - Sony Digital Video (dvsd) qdv.dll: not tested Audio codecs: ~~~~~~~~~~~~~ Built-in native codecs: - Uncompressed PCM (0) - MPEG layer 2 and 3: (0x50, 0x55) mp3lib, based on mpg123 (sometimes segfaults, then use ACM, see below) - AC3: (0x2000) libac3 - aLaw audio: (6) 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) Problems: - IMA ADPCM (0x11) imaadp32.acm: segfault - MS-GSM: (0x31,0x32) msgsm32.acm: segfault (use built-in codec) - VoxWare Metasound: (0x75) voxmsdec.ax: segfault Not tested: - ACELP.net: (0x130) acelpdec.ax: not tested (no sample file) - 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 a bugreport, and upload the files to thot.banki.hu/incoming/MPlayer (also see DOCS/README !!!) . 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. 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 a bugreport, and upload the files to thot.banki.hu/incoming/MPlayer (also see DOCS/README !!!) . Gabucino & A'rpi