Mercurial > mplayer.hg
annotate DOCS/xml/en/users-vs-dev.xml @ 13472:c85ea936d411
Encoding tip regarding x264's deblock filter suggested by Loren Merritt.
author | gpoirier |
---|---|
date | Sun, 26 Sep 2004 10:21:17 +0000 |
parents | 3c99b7a8c840 |
children | 7895a1b73828 |
rev | line source |
---|---|
9675 | 1 <?xml version="1.0" encoding="iso-8859-1"?> |
10913
49b1a67e7381
Add revision keyword to english xml files, to ease translation synchronization
lumag
parents:
10144
diff
changeset
|
2 <!-- $Revision$ --> |
9675 | 3 <appendix id="users-vs-dev"> |
4 <title>Developer cries</title> | |
5 | |
6 <sect1 id="gcc-296"> | |
7 <title>GCC 2.96</title> | |
8 | |
9 <formalpara> | |
10 <title>The background:</title> | |
11 <para> | |
10111 | 12 The GCC <emphasis role="bold">2.95</emphasis> series is an official GNU release and |
9675 | 13 version 2.95.3 of GCC is the most bug-free in that series. We have never |
14 noticed compilation problems that we could trace to gcc-2.95.3. Starting | |
10111 | 15 with Red Hat Linux 7.0, <emphasis role="bold">Red Hat</emphasis> included a heavily |
9675 | 16 patched CVS version of GCC in their distribution and named it |
10111 | 17 <emphasis role="bold">2.96</emphasis>. Red Hat included this version in the |
9675 | 18 distribution because GCC 3.0 was not finished at the time, and they needed |
19 a compiler that worked well on all of their supported platforms, including | |
10111 | 20 IA64 and s390. The Linux distributor <emphasis role="bold">Mandrake</emphasis> also |
9675 | 21 followed Red Hat's example and started shipping GCC 2.96 with their |
22 Linux-Mandrake 8.0 series. | |
23 </para> | |
24 </formalpara> | |
25 | |
26 <formalpara> | |
27 <title>The statements:</title> | |
28 <para> | |
29 The GCC team disclaimed any link with GCC 2.96 and issued an | |
30 <ulink url="http://gcc.gnu.org/gcc-2.96.html">official response</ulink> | |
10111 | 31 to GCC 2.96. Many developers around the world began having problems with |
9675 | 32 GCC 2.96, and started recommending other compilers. Examples are |
33 <ulink url="http://www.mysql.com/downloads/mysql-3.23.html">MySQL</ulink>, | |
34 and | |
11278
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
35 <ulink url="http://avifile.sourceforge.net/news-old1.htm">avifile</ulink>. |
12229 | 36 Other interesting links are |
9675 | 37 <ulink url="http://www.atnf.csiro.au/people/rgooch/linux/docs/kernel-newsflash.html"> |
38 Linux kernel news flash about kernel 2.4.17</ulink> | |
39 and | |
40 <ulink url="http://www.voy.com/3516/572.html">Voy Forum</ulink>. | |
41 <application>MPlayer</application> also suffered from intermittent problems | |
42 that were all solved by switching to a different version of GCC. Several | |
43 projects started implementing workarounds for some of the 2.96 issues, but | |
44 we refused to fix other people's bugs, especially since some workarounds | |
45 may imply a performance penalty. | |
46 </para> | |
47 </formalpara> | |
48 | |
49 <para> | |
50 GCC 2.96 does not allow <literal>|</literal> (pipe) characters in assembler | |
51 comments because it supports Intel as well as AT&T Syntax and the | |
52 <literal>|</literal> character is a symbol in the Intel variant. The | |
53 problem is that it <emphasis>silently</emphasis> ignores the whole | |
54 assembler block. This is supposedly fixed now, GCC prints a warning instead | |
55 of skipping the block. | |
56 </para> | |
57 | |
58 <formalpara> | |
59 <title>The present:</title> | |
60 <para> | |
61 Red Hat says that GCC 2.96-85 and above is fixed. The situation has indeed | |
62 improved, yet we still see problem reports on our mailing lists that | |
63 disappear with a different compiler. In any case it does not matter any | |
64 longer. Hopefully a maturing GCC 3.x will solve the issue for good. If you | |
65 want to compile with 2.96 give the <option>--disable-gcc-checking</option> | |
66 flag to <filename>configure</filename>. Remember that you are on your own | |
10111 | 67 and <emphasis role="bold">do not report any bugs</emphasis>. If you do, you will only |
9675 | 68 get banned from our mailing list because we have had more than enough flame |
69 wars over GCC 2.96. Please let the matter rest. | |
70 </para> | |
71 </formalpara> | |
72 | |
73 <para> | |
74 If you have problems with GCC 2.96, you can get 2.96-85 packages from the | |
75 Red Hat <ulink url="ftp://updates.redhat.com">ftp server</ulink>, or just | |
76 go for the 3.0.4 packages offered for version 7.2 and later. You can also | |
11278
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
77 get <ulink url="ftp://people.redhat.com/jakub/gcc/3.2.3-11/">gcc-3.2.3-11 packages</ulink> |
9675 | 78 (unofficial, but working fine) |
11540 | 79 and you can install them along the gcc-2.96 you already have. |
80 <application>MPlayer</application> will detect it and use 3.2 instead of 2.96. | |
81 If you do not want to or cannot use the binary packages, here is how you can | |
82 compile GCC 3 from source: | |
9675 | 83 </para> |
84 | |
85 <procedure> | |
86 <step><para> | |
87 Go to the | |
10111 | 88 <ulink url="http://gcc.gnu.org/mirrors.html">GCC mirrors page</ulink> |
89 page and download <filename>gcc-core-<replaceable>XXX</replaceable>.tar.gz</filename> | |
90 where <replaceable>XXX</replaceable> is the version number. This includes the complete | |
91 C compiler and is sufficient for <application>MPlayer</application>. If you also want | |
92 C++, Java or some of the other advanced GCC features | |
93 <filename>gcc-<replaceable>XXX</replaceable>.tar.gz</filename> may better suit your needs. | |
9675 | 94 </para></step> |
95 <step><para> | |
96 Extract the archive with | |
10111 | 97 <screen>tar -xvzf gcc-core-<replaceable>XXX</replaceable>.tar.gz</screen> |
9675 | 98 </para></step> |
99 <step><para> | |
100 GCC is not built inside the source directory itself like most programs, | |
101 but needs a build directory outside the source directory. Thus you need | |
102 to create this directory via | |
103 <screen>mkdir gcc-build</screen> | |
104 </para></step> | |
105 <step><para> | |
106 Then you can proceed to configure gcc in the build directory, but you | |
107 need the configure from the source directory: | |
108 <screen> | |
109 cd gcc-build | |
10111 | 110 ../gcc-3.<replaceable>XXX</replaceable>/configure</screen> |
9675 | 111 </para></step> |
112 <step><para> | |
113 Compile GCC by issuing this command in the build directory: | |
114 <screen>make bootstrap</screen> | |
115 </para></step> | |
116 <step><para> | |
117 Now you can install GCC (as root) by typing | |
118 <screen>make install</screen> | |
119 </para></step> | |
120 </procedure> | |
121 </sect1> | |
122 | |
123 | |
124 <sect1 id="mplayer-binary"> | |
125 <title>Binary distribution</title> | |
126 | |
127 <para> | |
128 <application>MPlayer</application> previously contained source from the | |
129 OpenDivX project, which disallows binary redistribution.This code has been | |
130 removed in version 0.90-pre1 and the remaining file <filename>divx_vbr.c</filename> | |
131 that is derived from OpenDivX sources has been put under the GPL by its authors | |
132 as of version 0.90pre9. You are now welcome to create binary packages as you | |
133 see fit. | |
134 </para> | |
135 | |
136 <para> | |
137 Another impediment to binary redistribution was compiletime optimizations | |
10111 | 138 for CPU architecture. <application>MPlayer</application> now supports |
11278
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
139 runtime CPU detection (pass the |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
140 <option>--enable-runtime-cpudetection</option> to <command>configure</command>). |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
141 It is disabled by default because it implies a small speed sacrifice, but it is |
9675 | 142 now possible to create binaries that run on different members of the Intel |
11450
3c42df11d60e
Intel --> Intel compatible, inspired by Maciej Paszta <paszczi@go2.pl>
diego
parents:
11290
diff
changeset
|
143 compatible CPU family. |
9675 | 144 </para> |
145 </sect1> | |
146 | |
147 | |
148 <sect1 id="nvidia-opinions"> | |
149 <title>nVidia</title> | |
150 | |
151 <para> | |
152 We dislike the fact that <ulink url="http://www.nvidia.com">nVidia</ulink> | |
12815 | 153 only provides binary drivers (for use with XFree86), which are often buggy. |
9675 | 154 We have had many reports on |
155 <ulink url="http://mplayerhq.hu/pipermail/mplayer-users/">mplayer-users</ulink> | |
156 about problems related to these closed-source drivers | |
157 and their poor quality, instability and poor user and expert support. | |
158 Many of these problems/issues keep appearing repeatedly. | |
159 We have been contacted by nVidia lately, and they said these bugs do not | |
160 exist, instability is caused by bad AGP chips, and they received no reports | |
161 of driver bugs (like the purple line). So if you have a problem with your | |
162 nVidia card, you are advised to update the nVidia driver and/or buy a new | |
163 motherboard or ask nVidia to supply open-source drivers. In any case, if | |
164 you are using the nVidia binary drivers and facing driver related problems, | |
165 please be aware that you will receive very little help from our side | |
166 because we have little power to help in this matter. | |
167 </para> | |
168 </sect1> | |
169 | |
170 | |
171 <sect1 id="joe-barr"> | |
172 <title>Joe Barr</title> | |
173 | |
174 <para> | |
11278
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
175 Joe Barr became infamous in december 2001 by writing a less than favorable |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
176 <application>MPlayer</application> review called |
11540 | 177 <ulink url="http://www.linuxworld.com/story/32880.htm"><application>MPlayer</application>: The project from hell</ulink>. |
11278
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
178 He found <application>MPlayer</application> hard to install, and concluded |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
179 that the developers were unfriendly and the documentation |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
180 incomplete and insulting. You be the judge of that. |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
181 He went on to mention Arpi negatively in his |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
182 <ulink url="http://www.linuxworld.com/story/32887.htm">10 Linux predictions for 2002</ulink>. |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
183 In a followup review of xine called |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
184 <ulink url="http://www.linuxworld.com/story/32716.htm">A streaming media player for the rest of us</ulink> |
9675 | 185 he continued stirring up controversy. Ironically at the end of that article |
10144 | 186 he quotes his exchange with Günter Bartsch, the original author of <application>xine</application>, |
9675 | 187 that perfectly summarizes the whole situation: |
188 | |
189 <blockquote><para> | |
12229 | 190 However, he also went on to say that he was "surprised" by my column |
191 about <application>Mplayer</application> and thought it was unfair, reminding | |
192 me that it is a free software project. "If you don't like it," | |
193 Bartsch said, "you're free not to use it." | |
9675 | 194 </para></blockquote> |
195 | |
11278
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
196 Almost two years later in october 2003 he wrote another review called |
12229 | 197 <ulink url="http://www.newsforge.com/article.pl?sid=03/10/02/0343200">Mplayer revisited</ulink> |
198 (wrong spelling preserved). | |
11290 | 199 In it he came to the following conclusions: |
9675 | 200 |
201 <blockquote><para> | |
11278
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
202 I would have to say that there have been improvements in the number of |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
203 features, in performance, and in documentation. It's still not the |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
204 easiest install in the world, especially for newbies, but it's a |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
205 little better than it used to be. |
9675 | 206 </para></blockquote> |
207 | |
11278
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
208 and |
9675 | 209 |
11278
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
210 <blockquote><para> |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
211 But more importantly, I didn't notice any recent comments about user |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
212 abuse. I think I deserve some of the credit for that, even if I do say |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
213 so myself. Arpi and the rest of the project team must feel that way |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
214 too, because they have taken care to remember me in a special section |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
215 of the documentation included in the tarball. Like I said at the |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
216 start, some things haven't changed at all. |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
217 </para></blockquote> |
9675 | 218 |
11278
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
219 We could not have summarized our feelings towards Joe Barr better: |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
220 "It's still not the fairest or best researched article in the world, |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
221 but it's better than it used to be." Hopefully the next time around |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
222 we will meet each other's expectations. However, the credit for maturity |
ff78d7ceecaa
Dead links updated or removed, Joe Barr section rewritten taking into
diego
parents:
10913
diff
changeset
|
223 goes to our increasing age only, and maybe to being weary of flame wars. |
9675 | 224 </para> |
225 | |
226 </sect1> | |
227 </appendix> |