annotate DOCS/CODECS @ 227:2a94614c1d51

new section...
author gabucino
date Wed, 28 Mar 2001 12:33:42 +0000
parents 163bb3cee94d
children d734e84b4eea
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
187
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
1
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
2 Status of codecs support:
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
3 =========================
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
4
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
5 If you have sample files for untested codecs, or want a new codec to be
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
6 added, contact us! (for new codecs we need the DLL/AX file and a sample AVI)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
7
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
8 Video codecs:
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
9 ~~~~~~~~~~~~~
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
10 Built-in native codecs:
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
11
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
12 - MPEG 1/2 (no fourcc)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
13 libmpeg2: works, YUV (YV12) supported, with optional postprocessing!!!
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
14 - OpenDivX (DIV1,DIVX)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
15 decore: works, YUV (YV12) supported, postprocessing supported
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
16
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
17 Fully functional Win32 VfW/DShow codecs:
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
18
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
19 - M$ MPEG4 v1, v2 (MPG4,MP42):
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
20 mpg4c32.dll: works, YUV supported.
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
21 - M$ MPEG4 v3 / DivX ;-) (MP43,DIV3,DIV4,DIV5,DIV6)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
22 divxc32.dll: works, YUV supported.
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
23 divx_c32.ax: works, YUV and postprocessing supported.
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
24 - Indeo Video 5.0: (IV50)
188
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
25 ir50_32.dll (VfW): works, YUV supported.
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
26 ir50_32.dll (DShow): not tested
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
27 - Cinepak Video: (CVID)
187
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
28 iccvid.dll: works, YUV supported.
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
29 - Microsoft Video v1.0 (CRAM)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
30 msvidc32.dll: works, no YUV
188
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
31 - ATI VCR-2: (VCR2)
187
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
32 ativcr2.dll: works, YUV supported
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
33 - Motion JPEG (MJPG)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
34 m3jpeg32.dll: can't load (segfault)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
35 mcmjpg32.dll: works, YUV supported
188
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
36 - Windows Media Video 7 (WMV1)
187
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
37 wmvds32.ax: works, YUV supported
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
38
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
39 Problems:
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
40
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
41 - Indeo Video 4.1: (IV41)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
42 ir41_32.dll: works, no YUV, image upside-down
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
43 - Indeo Video 3.2: (IV32)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
44 ir32_32.dll: works, no YUV, image upside-down
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
45 - ASUS ASV1: (ASV1)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
46 asusasvd.dll: ??? not tested
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
47 - ASUS ASV2: (ASV2)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
48 asusasv2.dll: loads, image upside-down and very pixelized (no YUY2, but YVYU)
188
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
49 - ATI VCR1: (VCR1)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
50 ativcr1.dll: can't load (16-bit DLL)
200
1e6072946709 dunno what
gabucino
parents: 194
diff changeset
51 - I263: (I263)
1e6072946709 dunno what
gabucino
parents: 194
diff changeset
52 i263_32.drv: segfault
222
163bb3cee94d The quick red fox jumped over the lazy brown dog.
gabucino
parents: 200
diff changeset
53 - TrueMotion 2.0: (TM20)
163bb3cee94d The quick red fox jumped over the lazy brown dog.
gabucino
parents: 200
diff changeset
54 tm20dec.ax: segfault
188
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
55
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
56 Not tested:
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
57
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
58 - Motion Wavelets: (MVW1)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
59 icmw_32.dll: not tested (no sample file)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
60 - Indeo Video 3.1: (IV31)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
61 ir32_32.dll: not tested (no sample file)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
62 - AngelPotion MPEG-4: (AP41,AP42)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
63 APmpg4v1.dll: not tested
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
64 - Windows Media Video 8 (WMV2)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
65 wmv8ds32.ax: not tested (no sample file)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
66 - DV - Sony Digital Video (dvsd)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
67 qdv.dll: not tested
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
68
187
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
69
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
70 Audio codecs:
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
71 ~~~~~~~~~~~~~
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
72 Built-in native codecs:
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
73
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
74 - Uncompressed PCM (0)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
75 - MPEG layer 2 and 3: (0x50, 0x55)
194
88c20ac9c62c spelling corrections
gabucino
parents: 188
diff changeset
76 mp3lib, based on mpg123 (sometimes segfaults, then use ACM, see below)
187
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
77 - AC3: (0x2000)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
78 libac3
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
79 - aLaw audio: (6)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
80 aLaw codec from xanim sources
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
81 - MS-GSM: (0x31,0x32)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
82 xa_gsm from avifile sources
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
83
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
84 Fully functional Win32 ACM/DShow codecs:
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
85
188
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
86 - Windows Media Audio / DivX audio (0x160, 0x161)
187
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
87 divxa32.acm: works
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
88 - MS ADPCM (0x2)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
89 msadp32.acm: works
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
90 - MPEG layer 3: (0x55)
194
88c20ac9c62c spelling corrections
gabucino
parents: 188
diff changeset
91 l3codeca.acm: works (or you can use the built-in 3dnow-optimized codec)
187
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
92
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
93 Problems:
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
94
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
95 - IMA ADPCM (0x11)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
96 imaadp32.acm: segfault
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
97 - MS-GSM: (0x31,0x32)
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
98 msgsm32.acm: segfault (use built-in codec)
188
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
99 - VoxWare Metasound: (0x75)
187
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
100 voxmsdec.ax: segfault
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
101
188
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
102 Not tested:
187
7115f8d40201 Status of codecs support
arpi_esp
parents:
diff changeset
103
188
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
104 - ACELP.net: (0x130)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
105 acelpdec.ax: not tested (no sample file)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
106 - IMC: (0x401)
f42999bdecbe add more codec from avifile's fillplugins.h
arpi_esp
parents: 187
diff changeset
107 imc32.acm: not tested (no sample file)
227
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
108
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
109 Extracting codecs from Win32
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
110 ============================
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
111
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
112 1. VfW
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
113 ~~~~~~
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
114 VfW (Video for Windows) is the old Video API for Windows. Its codecs have
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
115 the .DLL or (rarely) .DRV extension.
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
116 If MPlayer fails with your AVI:
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
117
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
118 UNKNOWN video codec: HFYU (0x55594648)
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
119
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
120 It means your AVI is encoded with a codec which has the HFYU fourcc (HFYU =
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
121 HuffYUV codec, DIV3 = DivX Low Motion, etc...). Now that we know this, we'll
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
122 have to find out which DLL Windows loads in order to play this file. In our
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
123 case, the system.ini contains this (with many others):
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
124 VIDC.HFYU=huffyuv.dll
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
125 So we'll need the huffyuv.dll file. Note that the audio codecs are specified
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
126 with the MSACM prefix :
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
127 msacm.l3acm=L3codeca.acm
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
128 This is the MP3 codec.
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
129
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
130 So, now we have all the info needed (fourcc, codec file, sample AVI), submit a
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
131 bugreport, and upload the files to thot.banki.hu/incoming/MPlayer
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
132 (also see DOCS/README !!!) .
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
133
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
134 2. DirectShow
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
135 ~~~~~~~~~~~~~
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
136 DirectShow is the newer Video API, which is even worse than its predecessor.
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
137 Things are harder with DirectShow, since
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
138 - system.ini doesn't contain the needed information, instead it's stored in
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
139 the registry :(
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
140 - we'll need the GUID of the codec.
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
141
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
142 So let's search that goddamn registry..
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
143 - Start 'regedit'
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
144 - press ctrl-f, disable the first two checkbox, and enable the third. Type
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
145 the fourcc of the codec. (for ex.: TM20)
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
146 - you should see a field which contains the path and filename
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
147 (for ex. : C:\WINDOWS\SYSTEM\TM20DEC.AX)
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
148 - now that we have the file, we'll need the GUID. Try searching again, but
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
149 now we'll search for the codec's name, not the fourcc. Its name can be acquired
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
150 when Media Player is playing that file, by checking File/Properties/Advanced.
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
151 If not, bad luck ;) Try guessing.
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
152 (for ex. search for : TrueMotion)
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
153 - if found (in registry), there should be a FriendlyName field, and a CLSID
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
154 field. Write down that 16 byte of CLSID.
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
155
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
156 NOTE : if searching fails, try to enable all the checkboxes.. you may have
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
157 false hits, but maybe you'll have the right, too...
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
158 NOTE : dump that M$ shit.
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
159
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
160 So, now we have all the info needed (fourcc, GUID, codec file, sample AVI),
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
161 submit a bugreport, and upload the files to thot.banki.hu/incoming/MPlayer
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
162 (also see DOCS/README !!!) .
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
163
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
164
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
165
2a94614c1d51 new section...
gabucino
parents: 222
diff changeset
166 Gabucino & A'rpi