# HG changeset patch # User gabucino # Date 1005517831 0 # Node ID 33c32f3d9f1fb1fc1b2d11d0b9801ed0f56bbaaa # Parent 1d92268eb8fcd2a0cf97d5e81ce31512ab74d525 many small updates, fixes (some/more to be completed soon) diff -r 1d92268eb8fc -r 33c32f3d9f1f DOCS/codecs.html --- a/DOCS/codecs.html Sun Nov 11 22:26:15 2001 +0000 +++ b/DOCS/codecs.html Sun Nov 11 22:30:31 2001 +0000 @@ -142,7 +142,7 @@ isn't there, so download it from the 3ivx site.
--with-xanimlibdir
option to tell configure where
- it can find the xanim codecs. By default, it checks them at /usr/lib/xanim/mods
./
(...) .
diff -r 1d92268eb8fc -r 33c32f3d9f1f DOCS/documentation.html
--- a/DOCS/documentation.html Sun Nov 11 22:26:15 2001 +0000
+++ b/DOCS/documentation.html Sun Nov 11 22:30:31 2001 +0000
@@ -33,11 +33,11 @@
The GUI is built upon GTK, so gtk (and it's devel stuff) has to be installed. +
The GUI needs GTK (it isn't GTK, but the panels are), so gtk (and it's devel stuff) has to be installed.
You can build it by specifying --enable-gui
during ./configure .
Then, to turn on GUI mode, you either
Linux Infrared Remote Control - use an easy to build home-brewn IR-receiver, +
Linux Infrared Remote Control - use an easy to build home-brewn IR-receiver, an (almost) arbitrary remote control and control your linux box with it! More about it at www.lirc.org.
If you have installed the lirc-package, you can compile MPlayer with LIRC support using ./configure --enable-lirc
-If everything went fine, MPlayer will print a message like +
If everything went fine, MPlayer will print a message like LIRC init was successful. -on startup. If an error occurs it will tell you. If it doens't tell you +on startup. If an error occurs it will tell you. If it doens't tell you anything about LIRC there's no support compiled in. That's it :-)
The application name for MPlayer is - oh wonder - mplayer_lirc. @@ -560,7 +561,7 @@ config = QUIT end
-If you don't like the standard location for the lirc-config file (~/.lircrc) +
If you don't like the standard location for the lirc-config file (~/.lircrc) use the -lircconf <filename> switch to specify another file.
3.3. Streaming from network or pipes
@@ -600,7 +601,7 @@Here's how it looks like:
-eyck@incubus:/src/main$ sudo dpkg -i ../mplayer_0.18-1_i386.deb +eyck@incubus:/src/main$ sudo dpkg -i ../mplayer_0.18-1_i386.deb Password: (Reading database ... 26946 files and directories currently installed.) Preparing to replace mplayer 0.17a-1 (using ../mplayer_0.18-1_i386.deb) @@ -610,15 +611,15 @@ -To build the package you will need GNU make (gmake, /usr/ports/devel/gmake), +
To build the package you will need GNU make (gmake, /usr/ports/devel/gmake), native BSD make will not work.
-To run MPlayer you will need to re-compile the kernel with +
To run MPlayer you will need to re-compile the kernel with "options USER_LDT" (unless you are running -CURRENT, where this is default). If you have a CPU with SSE also use "options CPU_ENABLE_SSE" to use it (FreeBSD-STABLE required, or use kernel patches).
-If MPlayer complains about "CD-ROM Device '/dev/cdrom' not found!" make a +
If MPlayer complains about "CD-ROM Device '/dev/cdrom' not found!" make a symbolic link:
ln -s /dev/(your_cdrom_device) /dev/cdrom
There's no DVD support for FreeBSD yet.
@@ -677,7 +678,7 @@% gmake ... - gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math + gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math -fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c Assembler: mplayer.c "(stdin)", line 3567 : Illegal mnemonic @@ -704,7 +705,7 @@On Solaris with an UltraSPARC CPU, you can get some extra speed by using the CPU's VIS instructions for certain time consuming operations. - VIS acceleration can be used in MPlayer by calling functions in Sun's + VIS acceleration can be used in MPlayer by calling functions in Sun's mediaLib.
VIS accelerated operations from mediaLib are used for mpeg2 video diff -r 1d92268eb8fc -r 33c32f3d9f1f DOCS/encoding.html --- a/DOCS/encoding.html Sun Nov 11 22:26:15 2001 +0000 +++ b/DOCS/encoding.html Sun Nov 11 22:30:31 2001 +0000 @@ -26,8 +26,7 @@ is needed for CBR/VBR MP3 audio encoding ability. Note that a single
lame
binary isn't sufficient.
./configure
with optional parameters as usual, and
- type : make mencoder
. You have to install it manually for
- now.
+ type : make mencoder
, then make install
.
@@ -57,6 +56,21 @@
+Encoding 2-pass DivX4
+ +The name comes from the fact that this method encodes the file twice. +The first encoding (dubbed pass) creates a temporary file with a size +of few megabytes. In the second pass, the output file is created, using the +bitrate data from the temporary file. The resulting file will have much +better image quality. If this is the first time you heard about this, you +should consult some guides available on the Net.
+ +This example shows how to encode a DVD to a 2-pass DivX4 AVI. Just two
+commands are needed :
+ mplayer -dvd 2 -ovc divx4 -oac mp3lame -divx4opts br=1100
+-o movie.avi -pass 1
+ mplayer -dvd 2 -ovc divx4 -oac mp3lame -divx4opts br=1100 -o movie.avi -pass 2
Examples
Using MEncoder is the easiest thing on Earth. See the following :
diff -r 1d92268eb8fc -r 33c32f3d9f1f DOCS/faq.html --- a/DOCS/faq.html Sun Nov 11 22:26:15 2001 +0000 +++ b/DOCS/faq.html Sun Nov 11 22:30:31 2001 +0000 @@ -23,7 +23,7 @@ RedHat/Mandrake distributions) and BUGGY gcc release. gcc 2.96 is TOTALLY unsupported by MPlayer, because it simply SKIPS MMX/3DNow codes, it just does not compile it. Important: this is NOT an MPlayer-specific problem, -numerous other projects (DRI, avifile, etc..) have problems with this shit +numerous other projects (DRI, avifile, Wine, etc..) have problems with this shit too.Warning: loading mga_vid.o will taint the kernel: no license
General:
1.1.7:
supports software scaling1.1.8:
supports Xvideo (hardware scaling/fullscreen)1.2.0:
supports AAlib (-vo aa is very recommended, see below!)Card specific:
Special:
It's right, shows my Matrox G400 with 16Mb memory. I did this from XFree 4.x.x , which sets up MTRR registers automatically.
-If nothing worked, you have to do it manually. First, you have to find the base +If nothing worked, you have to do it manually. First, you have to find the base address. You have 3 ways to find it:
(--) SVGA: PCI: Matrox MGA G400 AGP rev 4, Memory @ 0xd8000000, 0xd4000000
-(--) SVGA: Linear framebuffer at 0xD8000000
01:00.0 | VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525 |
Memory at d8000000 (32-bit, prefetchable) | |
+01:00.0 VGA compatible controller: Matrox Graphics, Inc.: Unknown device 0525
+Memory at d8000000 (32-bit, prefetchable)
+
mga_mem_base = d8000000
Not all CPUs support MTRRs. For example older K6-2's [around 266Mhz,
stepping 0] doesn't support MTRR, but stepping 12's do ('cat /proc/cpuinfo
'
-to check it').
(II) Loading extension XVideo
DGA is short for Direct Graphics Access and is a means for a program to -bypass the X-Server and directly modifying the framebuffer memory. +bypass the X-Server and directly modifying the framebuffer memory. Technically spoken this happens by mapping the framebuffer memory into the memory range of your process. This is allowed by the kernel only -if you have superuser privileges. You can get these either by logging in +if you have superuser privileges. You can get these either by logging in as root or by setting the suid bit on the mplayer excecutable (NOT recommended!).
-There are two versions of DGA: DGA1 is used by XFree 3.x.x and DGA2 was +
There are two versions of DGA: DGA1 is used by XFree 3.x.x and DGA2 was introduced with XFree 4.0.1.
-DGA1 provides only direct framebuffer access as described above. For -switching the resolution of the video signal you have to rely on the +
DGA1 provides only direct framebuffer access as described above. For +switching the resolution of the video signal you have to rely on the XVidMode extension.
DGA2 incorporates the features of XVidMode extension and also allows -switching the depth of the display. So you may, although basically -running a 32 bit depth XServer, switch to a depth of 15 bits and vice +switching the depth of the display. So you may, although basically +running a 32 bit depth XServer, switch to a depth of 15 bits and vice versa.
However DGA has some drawbacks. It seems it is somewhat dependent on the -graphics chip you use and on the implementation of the XServer's video +graphics chip you use and on the implementation of the XServer's video driver that controls this chip. So it does not work on every system ...
@@ -265,7 +264,7 @@
chown root /usr/local/bin/mplayer
- chmod 750 /usr/local/bin/mplayer
+ chmod 750 /usr/local/bin/mplayer
chmod +s /usr/local/bin/mplayer
/etc/X11/XF86Config
(/etc/X11/XF86Config-4
for XFree 4.0.X respectively).
Those are defined by so-called modelines and depend on the capabilites
of your video hardware. The XServer scans this config file on startup and
-disables the modelines not suitable for your hardware. You can find
+disables the modelines not suitable for your hardware. You can find
out which modes survive with the X11 log file. It can be found at:
/var/log/XFree86.0.log
.
See appendix A for some sample modeline definitions.
@@ -305,84 +304,84 @@ how the DGA driver for MPlayer works.2.3.1.3.6. Features of the DGA driver
- +The DGA driver is invoked by specifying -vo dga at the command line. -The default behaviour is to switch to a resolution matching the original -resolution of the video as close as possible. It deliberately ignores the --vm and -fs switches (enabling of video mode switching and fullscreen) - +The default behaviour is to switch to a resolution matching the original +resolution of the video as close as possible. It deliberately ignores the +-vm and -fs switches (enabling of video mode switching and fullscreen) - it always tries to cover as much area of your screen as possible by switching -the video mode, thus refraining to use a single additional cycle of your CPU +the video mode, thus refraining to use a single additional cycle of your CPU to scale the image. If you don't like the mode it chooses you may force it to choose the mode -matching closest the resolution you specify by -x and -y. -By providing the -v option, the DGA driver will print, among a lot of other -things, a list of all resolutions supported by your current XF86-Config +matching closest the resolution you specify by -x and -y. +By providing the -v option, the DGA driver will print, among a lot of other +things, a list of all resolutions supported by your current XF86-Config file. -Having DGA2 you may also force it to use a certain depth by using the -bpp -option. Valid depths are 15, 16, 24 and 32. It depends on your hardware -whether these depths are natively supported or if a (possibly slow) +Having DGA2 you may also force it to use a certain depth by using the -bpp +option. Valid depths are 15, 16, 24 and 32. It depends on your hardware +whether these depths are natively supported or if a (possibly slow) conversion has to be done.
- -If you should be lucky enough to have enough offscreen memory left to -put a whole image there, the DGA driver will use doublebuffering, which + +
If you should be lucky enough to have enough offscreen memory left to +put a whole image there, the DGA driver will use doublebuffering, which results in much smoother movie replaying. It will tell you whether double- buffering is enabled or not.
Doublebuffering means that the next frame of your video is being drawn in some offscreen memory while the current frame is being displayed. When the -next frame is ready, the graphics chip is just told the location in memory +next frame is ready, the graphics chip is just told the location in memory of the new frame and simply fetches the data to be displayed from there. -In the meantime the other buffer in memory will be filled again with new +In the meantime the other buffer in memory will be filled again with new video data.
-Doublebuffering may be switched on by using the option -double and may be -disabled with -nodouble. Current default option is to disable -doublebuffering. When using the DGA driver, onscreen display (OSD) only +Doublebuffering may be switched on by using the option -double and may be +disabled with -nodouble. Current default option is to disable +doublebuffering. When using the DGA driver, onscreen display (OSD) only works with doublebuffering enabled. However, enabling doublebuffering may result in a big speed penalty (on my K6-II+ 525 it used an additional 20% of CPU time!) depending on the implementation of DGA for your hardware. - +Generally spoken, DGA framebuffer access should be at least as fast as using the X11 driver with the additional benefit of getting a fullscreen image. -The percentage speed values printed by mplayer have to be interpreted with +The percentage speed values printed by mplayer have to be interpreted with some care, as for example, with the X11 driver they do not include the time -used by the X-Server needed for the actual drawing. Hook a terminal to a -serial line of your box and start top to see what is really going on in your +used by the X-Server needed for the actual drawing. Hook a terminal to a +serial line of your box and start top to see what is really going on in your box ...
-Generally spoken, the speedup done by using DGA against 'normal' use of X11 -highly depends on your graphics card and how well the X-Server module for it +
Generally spoken, the speedup done by using DGA against 'normal' use of X11 +highly depends on your graphics card and how well the X-Server module for it is optimized.
-If you have a slow system, better use 15 or 16bit depth since they require +
If you have a slow system, better use 15 or 16bit depth since they require only half the memory bandwidth of a 32 bit display.
-Using a depth of 24bit is even a good idea if your card natively just supports +
Using a depth of 24bit is even a good idea if your card natively just supports 32 bit depth since it transfers 25% less data compared to the 32/32 mode.
- +I've seen some avi files already be replayed on a Pentium MMX 266. AMD K6-2 CPUs might work at 400 MHZ and above.
-Well, according to some developpers of XFree, DGA is quite a beast. They +
Well, according to some developpers of XFree, DGA is quite a beast. They tell you better not to use it. Its implementation is not always flawless with every chipset driver for XFree out there.
Section "Modes" Identifier "Modes[0]" - Modeline "800x600" 40 800 840 968 1056 600 601 605 628 + Modeline "800x600" 40 800 840 968 1056 600 601 605 628 Modeline "712x600" 35.0 712 740 850 900 400 410 412 425 - Modeline "640x480" 25.175 640 664 760 800 480 491 493 525 + Modeline "640x480" 25.175 640 664 760 800 480 491 493 525 Modeline "400x300" 20 400 416 480 528 300 301 303 314 Doublescan Modeline "352x288" 25.10 352 368 416 432 288 296 290 310 Modeline "352x240" 15.750 352 368 416 432 240 244 246 262 Doublescan @@ -414,15 +413,15 @@ -If you experience troubles with the DGA driver please feel free to file -a bug report to me (e-mail address below). Please start mplayer with the +
If you experience troubles with the DGA driver please feel free to file +a bug report to me (e-mail address below). Please start mplayer with the -v option and include all lines in the bug report that start with vo_dga:
- -Please do also include the version of X11 you are using, the graphics card -and your CPU type. The X11 driver module (defined in XF86-Config) might + +
Please do also include the version of X11 you are using, the graphics card +and your CPU type. The X11 driver module (defined in XF86-Config) might also help. Thanks!
- +Acki (acki@acki-netz.de, www.acki-netz.de)
@@ -485,7 +484,7 @@-fbmode mode name to use (according to /etc/fb.modes) -fbmodeconfig config file of modes (default /etc/fb.modes) -monitor_hfreq IMPORTANT values, see example.conf - -monitor_vfreq + -monitor_vfreq -monitor_dotclock @@ -514,7 +513,7 @@ support, the mga_vid kernel driver. It's active developed by me (A'rpi), and it has hardware VSYNC support with triple buffering. It works on both framebuffer console and under X. - + To use it, you first have to compile mga_vid.o:
cd drivers
@@ -548,7 +547,7 @@ you have matroxfb console, or '-vo xmga' under XFree86 3.x.x or 4.x.x.The mga_vid driver cooperates with Xv.
- +2.3.1.8. SiS 6326 framebuffer (sis_vid)
@@ -599,7 +598,7 @@-aaosdcolor=V change osd color -aasubcolor=V change subtitle color where V can be: (0/normal, 1/dark, 2/bold, 3/boldfont, 4/reverse, 5/special)
- + AAlib itselves provides a large sum of options. Here are some important:
@@ -614,7 +613,7 @@ non-framebuffer console. Use SVGATextMode to set up a big textmode, then enjoy! (secondary head Hercules cards rock :)) (anyone can enhance bdev to do conversion/dithering to hgafb? Would be neat :) - + Use the -framedrop option if your comp isn't fast enough to render all frames!
Playing on terminal you'll get better speed and quality using the linux driver, not @@ -671,7 +670,7 @@ What are minuses:
+ + +
- It works only on x86 systems.
- It's the slowest driver from all the available ones for MPlayer.
- (But only if your card doesn't support DGA mode - otherwise this + (But only if your card doesn't support DGA mode - otherwise this driver is comparable by speed with -vo dga and -vo fbdev ones.
- It can be used only by ROOT.
@@ -710,6 +709,21 @@Avoid if possible. Outputs to X11 (uses shared memory extension), with no +hardware acceleration at all. Supports (MMX/3DNow/SSE accelerated, but still +slow) software scaling, use the options
+ +-fs -zoom
. Most cards have +hardware scaling support, use the-vo xv
output for them, or +-vo xmga
for Matroxes.The problem is that most cards' driver doesn't support +hardware acceleration on the second head/TV. In those cases, you see green/blue +coloured window instead of the movie. This is where this driver comes in +handy, but you need powerful CPU to use software scaling. Don't use the +SDL driver's software output+scaler, it has worse image quality !
+ + @@ -725,7 +739,7 @@ (Back End Scaler, the YUV scaler on G200/G400/G450/G550 cards) doesn't work on it! The windows driver somehow workarounds this, probably by using the 3D engine to zoom, and the YUV framebuffer to display the zoomed - image. If you really want to use X, use the-vo x11 -zoom
+ image. If you really want to use X, use the-vo x11 -fs -zoom
options, but it will be SLOW, and has Macrovision copyprotection enabled.- Framebuffer: using the matroxfb modules in the 2.4 kernels.