* doc/vlc-howto.sgml: Spelling mistakes, small updates, harmonization
[vlc.git] / doc / vlc-howto.sgml
index 9fee58a..a1549e3 100644 (file)
@@ -2,11 +2,11 @@
 <linuxdoc><article>
 <titlepag>
  <title>VLC HOWTO</title>
 <linuxdoc><article>
 <titlepag>
  <title>VLC HOWTO</title>
- <author>by the Videolan Team<tt><htmlurl url="mailto:videolan-faq@videlan.org" name="videolan-faq@videlan.org"></tt></author>
- <date>v0.0.3, 21 apr 2001</date>
+ <author>Originally written by Henri Fallon, maintained by Johan Bilien<tt><htmlurl url="mailto:jobi@videolan.org" name="<jobi@videolan.org>"></tt></author>
+ <date>v0.0.9, 16 april 2002</date>
 
  <abstract>
 
  <abstract>
-  This document describes how to use the vlc (VideoLAN client) to read DVDs and mpeg files and DVDs.
+  This document describes how to use the vlc (VideoLAN client) to read DVDs and mpeg files, locally or from a network.
  </abstract>
 </titlepag>
 
  </abstract>
 </titlepag>
 
@@ -21,7 +21,8 @@
    VideoLAN is a project of sudents of the École Centrale Paris which aims 
    to broadcast video on the campus, and provide the students with a MPEG2 
    software-only decoder. VideoLAN is an OpenSource project which will thus 
    VideoLAN is a project of sudents of the École Centrale Paris which aims 
    to broadcast video on the campus, and provide the students with a MPEG2 
    software-only decoder. VideoLAN is an OpenSource project which will thus 
-   allow anyone to watch DVD movies under Linux, BeOS, MacOS and most Unix 
+   allow anyone to watch DVD movies under Linux, BeOS, MacOS X, Windows 
+   and most Unix 
    systems
   </p>
   <p>
    systems
   </p>
   <p>
  </sect1>
  
  <sect1>
  </sect1>
  
  <sect1>
-  <heading>What is the vlc</heading>
+  <heading>What is the VideoLAN project ?</heading>
   <p>
   <p>
-   Vlc stands for VideoLAN client. It is the name of the program which is
-   capable of decoding MPEG streams, and displaying them onto your screen,
-   so you can watch you favourite movies, confortably sit in your armchair
-   :-).
+    VideoLAN is a complete software solution for video streaming, developed
+    by students at the <htmlurl url="http://www.ecp.fr" name="Ecole Centrale
+    Paris"> and contributors from all over the world, under the General
+    Public License (GPL). It has been designed for streaming MPEG 1 and MPEG
+    2 videos on local area networks (LAN), but it can be extended to
+    metropolitan or wide area networks (MAN, WAN), 
+    thanks to the multicast technology.
+    The VideoLAN solution includes a server, which can stream video from
+    various sources (file, DVD, satellite, camera, ...), a client, which can
+    receive, decode and display MPEG 1 and MPEG 2 streams and, if necessary,
+    a channel server which tells automatically to the client the parameters
+    needed to receive the stream.
+
+    <verb>
+
+        DVD --->-                 Unicast/Broadcast/Multicast
+                  \                           ---
+        File --->--     --------            /     \            --------
+                   |->-| Server |=====>====|  LAN  |---->-----| Client |
+     Satellite ->--    | (VLS)  |           \     /           | (VLC)  |
+                  /     --------              ---              --------
+       MPEG2 -->-                              ^
+      encoder                                  |
+                                               v
+                                        ----------------
+                                       | Channel Server |
+                                       |    (VLCS)      |
+                                        ----------------
+    </verb>
+    More details about the project can be found on the
+    <htmlurl url="http://www.videolan.org" name="VideoLAN Web site">.
+
   </p>
  </sect1>
   </p>
  </sect1>
+ <sect1>
+  <heading>The documentation of the project</heading>
+  <p>
+    There are four main documents :
+<itemize>
+<item>the <htmlurl
+url="http://www.videolan.org/doc/videolan-quickstart/videolan-quickstart.html"
+name="VideoLAN Quickstart">,
+<item>the <htmlurl url="http://www.videolan.org/network/doc/videolan-howto.html"
+name="VideoLAN HOWTO">,
+<item>the <htmlurl url="http://www.videolan.org/vls/doc/vls-guide.html"
+name="VideoLAN Server user guide">,
+<item>this VideoLAN Client Howto.
+</itemize>
+
+The up-to-date version of these documents can be found on the <htmlurl
+url="http://www.videolan.org/doc" name="VideoLAN Web Site">.
 
  <sect1>
   <heading>Translated versions of this document</heading>
 
  <sect1>
   <heading>Translated versions of this document</heading>
 
   <p>
    The English version is maintained by Henri Fallon,
 
   <p>
    The English version is maintained by Henri Fallon,
-   and the VideoLAN team. It can be found at:
-   <htmlurl url="http://www.videolan.org/doc.html"
-   name="http://www.videolan.org/doc.html">.
+   Johan Bilien, and the VideoLAN team. It can be found at:
+   <htmlurl url="http://www.videolan.org/doc/index.html"
+   name="http://www.videolan.org/doc/index.html">.
   </p>
  </sect1>
 
   </p>
  </sect1>
 
+ <sect1>
+  <heading>Requirements</heading>
+  <sect2>
+   <heading>Operating system</heading>
+   <p>
+    VLC works under the following systems :
+   </p>
+   <p>
+   <itemize>
+    <item> Linux (all distributions, including iPAQ Familiar Linux)
+    <item> Windows (all 32bit versions)
+    <item> Mas OS X
+    <item> FreeBSD, NetBSD, OpenBSD, BSD/OS
+    <item> BeOS
+    <item> QNX RTOS
+    <item> Solaris
+   </itemize>
+   </p>
+   <p>
+    Please note that the Linux, Windows and MacOS X are generally the most
+    uptodate versions.
+  </p>
+   </sect2>
+   <sect2>
+   <heading>Software requirements</heading>
+   <p>
+    Depending on the outputs and inputs you are using, you may need 
+    additionnal libraries. Please see <ref id="modules" name="description">.
+   </p>
+   <p>
+    For playing encrypted DVDs, you will need libdvdcss, which you can found
+    on this page :
+    <htmlurl name="http://www.videolan.org/libdvdcss/download.html"
+    url="http://www.videolan.org/libdvdcss/download.html">.
+   </p>
+  </sect2>
+  <sect2>
+   <heading>Hardware requirements</heading>
+   <p>
+    The hardware power needed depends a lot of the type of stream. 
+    For reading a DVD, a CPU working at around 450 MHz is required.
+   </p>
+   <p>
+    VLC can benefits from hardware acceleration from modern video cards
+    for YUV transformation and window rescaling. it also uses MMX, MMX EXT,
+    SSE, 3Dnow! optimizations if available.
+   </p>
+  </sect2>
+ </sect1>
+
  <sect1> 
   <heading>Disclaimer</heading> 
   <p> 
  <sect1> 
   <heading>Disclaimer</heading> 
   <p> 
   </p>
 
   <p>
   </p>
 
   <p>
-   In this HOWTO, we consider you already have a little knowledge about Linux, and you 
-   know how to use a DVD. If not, good howtos can be found on the Linux Documentation
-   Projet.
-  </p>
- </sect1>
-  
- <sect1>
-  <heading>Legal</heading>
-  <p>
-   Copyright (©) 2001 by the VideoLAN project. This document may be distributed only
-   subject to the terms and conditions set forth in 
-   <htmlurl url="http://metalab.unc.edu/LDP/LDP-COPYRIGHT.html" name="the LDP license">.
+   In this HOWTO, we consider you already have a little knowledge about
+   Linux, and you know how to use a DVD. If not, good howtos can be
+   found on the Linux Documentation Projet.
   </p>
  </sect1>
   </p>
  </sect1>
+
+ <sect1> 
+  <heading>Legal</heading> 
+  <p> 
+   Copyright (©) 2001 by the VideoLAN project. This document may be
+   distributed only subject to the terms and conditions set forth in
+   <htmlurl url="http://metalab.unc.edu/LDP/LDP-COPYRIGHT.html" 
+   name="the LDP license">.
+  </p> 
+ </sect1> 
 </sect>
 
 <sect>
 </sect>
 
 <sect>
- <heading>Installing the vlc : the packages</heading>
-  <p>
-   This is certainly the simplest way to intsall the vlc on your system,
-   especially if you're using a packaged OS.
+ <heading>Quick start</heading>
+  
+  <p> This section will help you get, install and use vlc without giving you
+  much details.
   </p>
 
   </p>
 
+ <sect1>
+  <heading>Get and install vlc from binary packages</heading>
   <p>
    The first thing to do is to get an archive, on our web site 
    <htmlurl url="http://www.videolan.org/download.html" name="http://www.videolan.org/download.html">
   </p>
  
   <p>
    The first thing to do is to get an archive, on our web site 
    <htmlurl url="http://www.videolan.org/download.html" name="http://www.videolan.org/download.html">
   </p>
  
- <sect1>
-  <heading>Linux/Unix users</heading>
   <sect2>
    <heading>Which package to chose ?</heading>
    <p>
   <sect2>
    <heading>Which package to chose ?</heading>
    <p>
-    There are different packages because vlc has "plugins" which provide features 
-    but also enlarge the executable and require external libs. 
+    There are different packages because vlc has "plugins" which provide 
+    features but also enlarge the executable and require external libraries. 
    </p>
    <p>
     SDL is a lib which allows you to have an accelerated video output.
    </p>
    <p>
     SDL is a lib which allows you to have an accelerated video output.
     the esd-aware vlc.
    </p>
    <p>
     the esd-aware vlc.
    </p>
    <p>
-    Generally, when you don't know what a module name is, you don't need/use it :-)
+    Generally, when you don't know what a module name is, you don't 
+    need/use it :-)
    </p>
   </sect2>
   
    </p>
   </sect2>
   
-  <sect2>
-   <heading>Binary archive</heading>
-   <p>
-    Untar it typing
-    <verb>
-     tar xvzf vlc-x.x.x.tar.gz
-    </verb>
-     Go in the vlc directory and get to the 'How to play movies' section If
-     you wish not to keep vlc in this single directory but install it fully
-     on your system, you may, as root, type
-    <verb>
-     make install
-    </verb>
-   </p>
-  </sect2>
-   
   <sect2>
    <heading>Debian package</heading>
    <p>
   <sect2>
    <heading>Debian package</heading>
    <p>
    </p>
    <p>
     Depending on the package you have downloaded, you may have dependency
    </p>
    <p>
     Depending on the package you have downloaded, you may have dependency
-    problems. You have to solve them, by installing the required libs.
+    problems. You have to solve them, by installing the required libraries.
    </p>
   </sect2>
    
    </p>
   </sect2>
    
     </verb>
    </p>
    <p>
     </verb>
    </p>
    <p>
-    You may have to install external libs to meet dependencies, depending on
+    You may have to install external libraries to meet dependencies, depending on
     the package you downloaded (gnome, gtk, esd, ...).
    </p>
   </sect2>
     the package you downloaded (gnome, gtk, esd, ...).
    </p>
   </sect2>
- </sect1>
 
 
+  <sect2>
+   <heading>BeOS users</heading>
+   <p>
+    Double-click on the archive. It should open your favorite archive extracter.
+    You can then execute the vlc from there, or extract the archive to a 
+    directory and run it from there.
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>MacOS X users</heading>
+   <p>
+    To be completed
+   </p>
+  </sect2> 
+  <sect2>
+   <heading>Windows users</heading>
+   <p>
+    Launch the installer by double-clicking on it, and follow the installation
+    instructions. Please note that in most cases you will need administrator
+    rights to install it under Windows NT, 2000 and XP
+   </p>
+  </sect2>
+ </sect1>
  <sect1>
  <sect1>
-  <heading>BeOS users</heading>
+  <heading>Get libdvdcss</heading>
   <p>
   <p>
-   Double-click on the archive. It should open your favorite archive extracter.
-   You can then execute the vlc from there, or extract the archive to a 
-   diretory and run it from there.
+   In order to read CSSsrambled DVDs, you will need libdvdcss. 
+   You can find binary
+   packages for your distribution here : <htmlurl 
+   name="http://www.videolan.org/libdvdcss/download.html" 
+   url="http://www.videolan.org/libdvdcss/download.html">
+  </p>
+  <p>
+   For Windows users, libdvdcss is statically linked in the 
+   Windows binary, so you don't have to install it.
   </p>
  </sect1>
  
  <sect1>
   </p>
  </sect1>
  
  <sect1>
-  <heading>MacOS X users</heading>
+  <heading>Use the vlc for DVD reading</heading>
   <p>
   <p>
-   To be completed
+  Launch the application simply by typing vlc in a terminal (or by 
+  double-clicking on its icon in a graphical shell). You should see
+  the graphical interface appear.
   </p>
   </p>
- </sect1> 
+
+  <p> 
+  For reading a DVD (or a VCD), click on the "Disc" button. The new window 
+  you must then enter the path to your DVD or VCD drive :
+
+   <sect2>
+    <heading>Linux users</heading>
+    <p>
+     Usually, you dvd device is /dev/hd? (if you have an ide drive).
+     For instance, if you DVD player is master on the second IDE device,
+     it will be /dev/hdc.
+    </p>
+    <p>
+     It is very useful to create a symlink to this file, called /dev/dvd. 
+     To do this, as root, type (if your dvd device is /dev/hdc for example) :
+     <verb>
+      ln -s /dev/hdc /dev/dvd
+     </verb>
+     Also make sure you have read AND write permission to the device 
+     (otherwise dvd decryption won't work).
+    </p>
+   </sect2>
+   <sect2>
+    <heading>Windows users</heading>
+    <p>
+     The path to your DVD drive usually is D:\ or E:\. You may have a look
+     in "My Computer" and look to which letter your DVD drive is assigned.
+    </p>
+   </sect2>
+   <sect2>
+    <heading>BeOS users</heading>
+    <p>
+      Under BeOS, the dvd device looks like 
+      "/dev/disk/ide/atapi/1/slave/0/raw" for example, if your dvd device is 
+      slave on your first (not sure) ide device.
+    </p>
+   </sect2>
+   <sect2>
+    <heading>Other OS</heading>
+    <p>
+    To do ...
+    </p>
+   </sect2>
+  <sect1>
+   <heading>Use the vlc for network streaming</heading>
+   <p>
+    This is the vlc original usage. 
+   </p>
+   
+   <p>
+    Launch the vlc as you would have for DVD reading. Then click on the 
+    "Network" button. 
+    </p>
+    <sect2>
+     <heading>If using a VideoLAN Channel Server</heading>
+     <p>
+      The only thing you have to do is to check the "Channel server" box
+      and to enter the IP address and port 
+      of this channel
+      server. Ask your administrator if you don't have it. Then click on OK.
+     </p>
+     <p>
+      You will see a new "Channel" field in the interface. You may now
+      enter the selected channel and click on OK. After a few seconds,
+      if a program is being sent in this channel, you should see the program
+      start.
+     </p>
+     <p>
+      If nothing appears and you are sure that a program is streamed in
+      this channel, you may try once again, because a problem of communication
+      with the channel server could have occured (in you launched vlc from
+      a terminal, you should see "Network error: no answer from vlcs").
+     </p>
+    </sect2>
+    <sect2>
+     <heading>Without VideoLAN Channel Server</heading>
+     <p>
+      Simply choose clicking on the network button, then on ok should be 
+      sufficient in most cases.
+     </p>
+     <p>
+      After clicking on OK, and if a program is being sent, you should see
+      a window open with your program.
+     </p>
+    </sect2>
 </sect>    
     
 <sect>
 </sect>    
     
 <sect>
- <heading>Using the vlc</heading>
+ <heading>The graphical interface</heading>
  <p>
  <p>
-  Good job, you have installed the vlc on your system. Now, it's time to 
-  use it. Don't worry, it's not that difficult.
+  Please note that the gnome, gtk and win32 interfaces are currently the most
+  advanced. The following descriptions refer to them.
  </p>
  <sect1>
  </p>
  <sect1>
-  <heading>Lauching</heading>
-  <sect2>
-   <heading>The graphical interface</heading>
-   <p>
-    Basically, double clicking on the vlc icon, or typing 'vlc' in a 
-    console should launch a graphical interface On Linux/Unix, you may want
-    to specify gnome or gtk interface, with the "--intf" option.
-   </p>
-  </sect2>
-
-  <sect2>
-   <heading>In case it doesn't work</heading>
-   <p>
-    In case this does not work, you'll have to use command line options.
-    Usually, to play a file, you'll use :
-    <verb>
-     vlc [file name]
-    </verb>
-    To play a dvd, if your dvd device is "/dev/dvd", you'll type :
-    <verb>
-     vlc dvd:/dev/dvd
-    </verb>
-   On BeOS, the dvd device looks like "/dev/disk/ide/atapi/1/slave/0/raw"
-   </sect2>  
- </sect1>
+  <heading>Opening a stream</heading>
+  <p>
+   For opening streams through the graphical interface, click on either
+   "File" for opening a file stored on your hard drive, "Disc" for 
+   opening a DVD or a VCD, "Network" for reading a stream from a vls 
+   or through http input, or "Satellite" for reading directly 
+   from a satellite card.
+  </p>
  <sect1>
  <sect1>
-  <heading>Using the interface</heading>
+  <heading>Basic stream control</heading>
   <p>
   <p>
-   By now you should see a beautiful interface, with buttons and menus.
-   The text should be quite self-explaining : "Open file", "Open Disc", ...
+   You have at your disposal all the classical control of a video player.
+   For example when playing local streams, you can do pauses, speed up or
+   slow down the stream ... Just use the corresponding buttons.
   </p>
   </p>
+ <sect1>
+  <heading>DVD and VCD navigation</heading>
   <p>
   <p>
-   For Dvd's you can choose directly from the "open" box the title & chapter 
-   you want to play.
+   When reading a DVD or a VCD, you can change chapter and title either 
+   by using the 
+   right-click menu or by using the dedicated bar that appears when reading
+   from a disc.
   </p>
  </sect1>
   </p>
  </sect1>
  <sect1>
  <sect1>
-  <heading>Fullscreen - chapters - features</heading>
+  <heading>Programs, audio and subtitles</heading>
+  <p>
+   When reading a multiprogram stream, you can change the current program
+   by selecting it in the "View/Programs" submenu, or using the "right click"
+   menu from the video output window.
+  </p>
   <p>
   <p>
-   Some of the following features don't work yet on some platforms.
-   We're doing our best to get the ports in sync.
+   In DVDs, if different angles are availables, they will be treated as
+   different programs.
   </p>
   <p>
    At any time you can change the audio/subtitles channel using either the 
    "setting" menu from the interface or using the "right click" menu from
    the video output window.
   </p>
   </p>
   <p>
    At any time you can change the audio/subtitles channel using either the 
    "setting" menu from the interface or using the "right click" menu from
    the video output window.
   </p>
-  <p>
-   To change chapter, you can use the right-click menu or the interface. 
-   Please note that the gnome interface is more advanced than the gtk or 
-   qt ones.
-  </p>
-  <p>
-   Using the 'f' key when using SDL or XVideo output toggles the 
-   fullscreen mode. Be warned that "right click" menus are a bit 
-   unstable.
-  </p>
- </sect1>
  <sect1>
  <sect1>
-  <heading>User help</heading>
+  <heading>Preferences window</heading>
   <p>
   <p>
-   First of all, it something seems to go wrong, read and try try to 
-   understand the error messages. If you are a confirmed user, you 
-   may try the "-vvv" option which makes the vlc very verbose.
+   By choosing "Preferences" in the "Settings" menu, you will open 
+   the preferences window. This window is generated dynamically according
+   to the modules that were compiled.
   </p>
   <p>
   </p>
   <p>
-   There is a FAQ page on our website :
-   <htmlurl url="http://www.videolan.org/doc.html" name="http://www.videolan.org/doc.html">.
-   If you think one question should be in the FAQ, please contact
-   <htmlurl url="mailto:videolan-faq@videlan.org" name="videolan-faq@videlan.org">
+   In every tab, you may click on "Save" to store your settings in your
+   ~/.videolan/vlcrc file.
   </p>
   </p>
-  <p>
-   Finally, there's a users mailing list (English speaking). To subscribe, send a mail to 
-   <htmlurl url="mailto:listar@videlan.org" name="listar@videlan.org"> containing
-   "subscribe vlc" as message body.
-  </p>
-</sect> 
-
+  <sect2>
+   <heading>Interface tab</heading>
+   <p>
+    In that tab, you can select which interface you would like to use on next
+    start. Click on the choosen interface, click on "Select" then on "Save".
+   </p>
+  </sect2>
+  <sect2>
+   <heading>Audio tab</heading>
+   <p>
+    In this tab, you can select the audio output you would like to use on 
+    next start. You may also specify some other settings such as the output
+    level, the audio frequency, ...
+   </p>
+  </sect2>
+  <sect2>
+   <heading>Video tab</heading>
+   <p>
+    In this tab, you can select which video output will be used on next start,
+    and add a video filter module. You may also specify some video settings,
+    such as the window size or if you would like fullscreen display.
+   </p>
+  </sect2>
+  <sect2>
+   <heading>Input tab</heading>
+   <p>
+    In this tab, you can enter the input method with options (for example
+    <tt>udp:@239.255.255.42</tt>) that will be used on next start. You can 
+    also add some settings, such as the channel server address ...
+   </p>
+  </sect2>
+  <sect2>
+   <heading>Decoders tab</heading>
+   <p>
+    In this tab, you can select which decoder you want to use for MPEG audio
+    and AC3 streams.
+   </p>
+  </sect2>
+  <sect2>
+   <heading>CPU tab</heading>
+   <p>
+    In this tab, you may disable the use of some CPU extensions such as 
+    MMX or SSE.
+   </p>
+  </sect2>
+  <sect2>
+   <heading>Playlist tab</heading>
+   <p>
+    In this tab, you can select some playlist options, such as looping the
+    playlist.
+   </p>
+  </sect2>
+  <sect2>
+   <heading>Miscellanous tab</heading>
+   <p>
+    In this tab, you can select which memcpy version you want to use. Some 
+    of them uses MMX 3Dnow! extensions.
+   </p>
+  </sect2>  
+ </sect1>
+</sect>
 <sect>
 <sect>
- <heading>Advanced use of the vlc</heading>
+ <heading>Command line options</heading>
+ <p>
+ Many options are only available through command line. They are detailled here.
+ </p>
  <sect1>
  <sect1>
-  <heading>Command line options</heading>
+  <heading>Opening streams</heading>
+  <p> 
+  The following commands start vlc and add a first element to the playlist.
+  </p>
   <sect2>
   <sect2>
-   <heading>Choosing the video output</heading>
+   <heading>Opening a file</heading>
    <p>
    <p>
-    You have to use the "-V" otpion. For example :
-    <verb>
-     vlc -V xvideo
-    </verb>
+    Simply start vlc with <tt>vlc my_file.mpg</tt>. 
+   </p>
+   <p>
+    You may tell vlc what input to use, for example add <tt>--input ts</tt>
+    when playing a ts MPEG, although vlc should be able to recognize the type
+    of MPEG.
    </p>
   </sect2>
    </p>
   </sect2>
-  
   <sect2>
   <sect2>
-   <heading>Choosing the audio output</heading>
+   <heading>Opening a DVD or VCD</heading>
    <p>
    <p>
-    Use the "-A" option. For example :
-    <verb>
-     vlc -A alsa
-    </verb>
+    Simply start vlc with <tt>vlc dvd:DVDDRIVE</tt> or <tt> vlc vcd:CDROMDRIVE
+    </tt>, where DVDDRIVE/CDROMDRIVE is the complete
+    path to your dvd/cdrom drive.
+   </p>
+   <p>
+    You may add <tt>-t X -T Y</tt> to start directly from the Xth chapter, Yth
+    title.
    </p>
   </sect2>
    </p>
   </sect2>
-
   <sect2>
   <sect2>
-   <heading>Specifying a file</heading>
+  <heading>Start a network stream</heading>
    <p>
    <p>
-    Simply put the file name at the end of the command line, you won't need then 
-    to click "open" when the interface launches :
-    <verb>
-     vlc myfile.mpeg
-    </verb>
+    To receive an UDP stream (being sent from a VLS), start vlc with 
+    <tt> vlc udpstream:[@&lt;bind address&gt;[:&lt;server port&gt;]] </tt>.
+   </p>
+   <p>
+    Please note that bind address refers to the destination address, for 
+    example your broadcast address. If the stream is being broadcasted, 
+    <verb> vlc udpstream:</verb> should be sufficient. If the stream
+    is multicasted, you must specify the multicast address, for example 
+    <verb> vlc udpstream:@239.255.255.42  </verb>
+   <p>
+    To receive a http stream, start vlc with <tt>vlc &lt;your URL&gt;</tt>.
+
+   
    </p>
   </sect2>
    </p>
   </sect2>
+ </sect1>
+ <sect1>
+  <heading>Modules selection</heading>
+  <p>
+   The vlc tries to select the most appropriate interface, input and output
+   modules, among the ones available on the system, according to
+   the stream he is given to read. However, you may wish to force
+   the use of a specific module with the following options:
+   
+   <p> <verb>--intf &lt;interface module&gt;</verb>
+   allows you to select the interface module </p>
+
+   <p> <verb>--input &lt;input module&gt;</verb>
+   allows you to select the input module.</p>
+
+   <p> <verb>--vout &lt;video output module&gt;</verb>
+   allows you to select the video output.</p>
+
+   <p> <verb>--aout &lt;audio output module&gt;</verb>
+   allows you to select the audio output.</p>
+
+   <p> <verb>--filter &lt;video filter module&gt;</verb>
+   allows you to add a video filter module.</p>
+
+   <p> <verb>--mpeg_adec &lt;MPEG audio decoder module&gt;</verb>
+   allows you to select the audio MPEG decoder.</p>
+
+   <p> <verb>--ac3_adec &lt;AC3 audio decoder module&gt;</verb>
+   allows you to select the audio AC3 decoder.</p>
   
   
+ </sect1>
+ <sect1>
+  <heading>Other options</heading>
   <sect2>
   <sect2>
-   <heading>Specifying the title and chapter where to start</heading>
-   <p>
-    Use the "-t" and "-T" to specify title and chapter. For example, to go to the 12th 
-    chapter of the 2nd title, you'll type :
-    <verb>
-     vlc -t 2 -T 12
-    </verb>
-   </p>
+   <heading>Help options:</heading>
+   
+   <p> <verb>--help</verb>
+   gives you all the available options.</p>  
+   <p> <verb>--longhelp</verb>
+   gives you a more detailled version of the available options.</p>  
+   <p> <verb>--version</verb>
+   gives you information about the current version.</p>  
+   <p> <verb>--list</verb>
+   gives you the list of all available plugins.</p>
+   <p> <verb>--warning X or -vvvv (X times)</verb>
+   set the level of warning messages.</p>
+   <p> <verb>--stat</verb>
+   gives statistic outputs.</p>
+  </sect2>
+  
+  <sect2>
+   <heading>Audio options:</heading>
+   
+
+   <p> <verb>--noaudio</verb>
+   disables the audio output</p>
+   <p> <verb>--mono</verb>
+   forces the vlc to treat the stream in mono audio.</p>
+   <p> <verb>--volume &lt;integer&gt;</verb>
+   set the level of audio output.</p>
+   <p> <verb>--rate &lt;integer&gt;</verb>
+   set the audio output frequency (Hz)</p>
+   <p> <verb>--desync &lt;integer&gt;</verb>
+   compensates desynchronization of audio (ms)</p>
+  </sect2>
+
+  <sect2>
+   <heading>Video options:</heading>
+   
+   <p> <verb>--novideo</verb>
+   disables the video output</p>
+   <p> <verb>--width &lt;integer&gt;</verb>
+       <verb>--height &lt;integer&gt;</verb>
+   set the video window dimensions.</p>
+   <p> <verb>--grayscale</verb>
+   turns video output into grayscale mode.</p>
+   <p> <verb>--fullscreen</verb>
+   set fullscreen video.</p>
+   <p> <verb>--nooverlay</verb>
+   disables hardware acceleration for the video output</p>
+   <p> <verb>--spumargin &lt;integer&gt;</verb>
+   force subtitles position.</p>
+
+  </sect2>
+  <sect2>
+   <heading>Input options:</heading>
+
+
+   <p> <verb>--network-channel</verb>
+   Start with channel server enabled.</p>
+   <p> <verb>--channel_server &lt;string&gt;</verb>
+   Specify the channel server address.</p>
+   <p> <verb>--channel_port &lt;integer&gt;</verb>
+   Specify the channel server port.</p>
+   <p> <verb>--iface &lt;string&gt;</verb>
+   Select the network interface to use.</p>
+   <p> <verb>--input_program &lt;integer&gt;</verb>
+   Select the program to use (for streams with 
+   several programs, as those coming from satellite).</p>
+   <p> <verb>--input_audio &lt;integer&gt;</verb>
+   Select the audio channel to use.</p>
+   <p> <verb>--input_subtitle &lt;integer&gt;</verb>
+   Select the subtitle.</p>
+   <p> <verb>--input_channel &lt;integer&gt;</verb>
+   Select the channel number.</p>
+   <p> <verb>--dvd_device &lt;string&gt;</verb>
+   Specify the default dvd device.</p>
+   <p> <verb>--vcd_device &lt;string&gt;</verb>
+   Specify the default vcd device.</p>
+   <p> <verb>--ipv4</verb>
+   Force IPv4.</p>
+   <p> <verb>--ipv6</verb>
+   Force IPv6.</p>
+  </sect2>
+  
+  <sect2>
+   <heading>CPU options</heading>
+   <p> <verb>--nommx</verb>
+   disable the use of mmx CPU extensions.</p>
+   <p> <verb>--no3dn</verb>
+   disable the use of 3D Now! CPU extensions.</p>
+   <p> <verb>--nommxext</verb>
+   disable the use of mmx ext CPU extensions.</p>
+   <p> <verb>--noaltivec</verb>
+   disable the use of AltiVec CPU extensions.</p>
   </sect2>
  </sect1>
   </sect2>
  </sect1>
-</sect> 
+
+
+   
+
 
 <sect>
 
 <sect>
- <heading>For real men : building your vlc :-)</heading>
+ <heading>Building the vlc from sources</heading>
  <p>
   You can choose either to take the latest release, or a CVS source. Note that
   CVS snapshots may be broken, although we do our best to prevent this from
  <p>
   You can choose either to take the latest release, or a CVS source. Note that
   CVS snapshots may be broken, although we do our best to prevent this from
   </sect2>
   <sect2>
    <heading>Directly from CVS</heading>
   </sect2>
   <sect2>
    <heading>Directly from CVS</heading>
-   <p>
+   <p> <label id="cvs">
     Firs log in as suer anonymous with an empty password :
     <verb>
      cvs -d :pserver:anonymous@anoncvs.videolan.org:/var/cvs/videolan login
     Firs log in as suer anonymous with an empty password :
     <verb>
      cvs -d :pserver:anonymous@anoncvs.videolan.org:/var/cvs/videolan login
    </verb>
    </p>
   </sect2>
    </verb>
    </p>
   </sect2>
+  <sect2>
+   <heading>libdvdcss</heading>
+   <p>
+   To compile vlc with dvd support, you need to get and install libdvdcss.
+   </p>
+   <p>
+   It is available for download here : 
+   <htmlurl url="http://www.videolan.org/libdvdcss/download.html"
+   name="http://www.videolan.org/libdvdcss/download.html">
+
+   Decompress the tarball in a directory of your choice and build it :
+   <verb>
+    tar -xvzf libdvdcss-x.x.x.tar.gz
+    cd libdvdcss-x.x.x
+    ./configure
+    make
+    [as root] make install
+   </verb>
+
+   You can also find binaries packages for many distributions.
  </sect1>
  
  <sect1>
   <heading>Building the program</heading>
  </sect1>
  
  <sect1>
   <heading>Building the program</heading>
-  <p>
+  <p><label id="compile">
    Go into the vlc directory and run the configure script :
    <verb>
     ./configure
    </verb>
    Go into the vlc directory and run the configure script :
    <verb>
     ./configure
    </verb>
-   If you want to enable options, you may add "--enable-option" to the previous line.
-   For example, to build with the xvideo extension, and alsa support, you should type :
-   <verb>
+    If you want to enable options, you may add "--enable-option" 
+    to the previous line.
+    For example, to build with the xvideo extension, and alsa support, 
+    you should type :
+    <verb>
     ./configure --enable-xvideo --enable-alsa
     ./configure --enable-xvideo --enable-alsa
-   </verb>
-   To get the list of the available options, and know if they are enabled by default,
+    </verb>
+   To get the list of the available options, and know if they are 
+   enabled by default,
    you can try :
    <verb>
     ./configure --help
    </verb>
    you can try :
    <verb>
     ./configure --help
    </verb>
-   A very typical installation, on a XFree 4.1 system, recent video card, with gnome, is :
+  </p>
+  <p>
+   Also have a look on the <ref id="modules" name="following modules 
+   descriptions">.
+  </p>
+  <p>
+   A very typical installation, on a XFree 4.1 system, recent video card, with 
+   gnome, is :
    <verb>
    <verb>
-    ./configure --enable-xvideo --enable-esd --enable-gnome
+    ./configure --enable-esd --enable-gnome
    </verb>
   <p>
  </sect1>
    </verb>
   <p>
  </sect1>
   </p>
   <p>
    If you build a feature as a plugin, it can lead to a little loss of performance.
   </p>
   <p>
    If you build a feature as a plugin, it can lead to a little loss of performance.
-   It you build it inside the code, i'll enlarge a bit the size of the executable.
+   It you build it inside the code, it'll enlarge a bit the size of the executable.
   </p>
   <p>
   </p>
   <p>
-   When you're done with Makefile.opts (which also works if you leave it untouched), just 
+   When you're done with Makefile.opts (which also works if you leave it 
+   untouched), just 
    type:
     <verb>
     make
     </verb>
    type:
     <verb>
     make
     </verb>
-   It should compile without any error. If there are, please check you have the required libs 
+   It should compile without any error. If there are, please check you 
+   have the required libraries 
    installed on your system, as the configure script can't check them all.
   </p>
   <p>
    installed on your system, as the configure script can't check them all.
   </p>
   <p>
    <verb>
     make install
    </verb>
    <verb>
     make install
    </verb>
-  if you wish to have vlc fully installed on your system. If you prefer to keep in in the 
-  current directory, you may skip the "make install". You'll then have to cd into the vlc 
+  if you wish to have vlc fully installed on your system. If you prefer 
+  to keep in in the 
+  current directory, you may skip the "make install". You'll then have 
+  to cd into the vlc 
   directory and type "./vlc" instead of just typing vlc.
   </p>
  </sect1>
 </sect>
 
 <sect>
   directory and type "./vlc" instead of just typing vlc.
   </p>
  </sect1>
 </sect>
 
 <sect>
- <heading>Really advanced use</heading>
+ <heading>Modules description</heading>
+ <p> 
+  <label id="modules">
+  Here is a description of nearly all the available modules for the 
+  vlc. If you wish to compile one which is stated disabled by default,
+  you have to launch the configure script with 
+  <verb> ./configure --enable-module_name </verb>. See <ref 
+  name="compilation instructions" id="compile">.
  <sect1>
  <sect1>
-  <heading>Using the videolan network solution</heading>
+  <heading>Video outputs</heading>
+  <sect2>
+   <heading>x11</heading>
+   <p>default :enabled </p>
+   <p>
+    This is the basic x11 video output. It only requires a 
+    working X11 server. You will need xlibs headers to compile it
+    (xlibs-dev package on Debian systems).
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>xvideo</heading>
+   <p>default : enabled</p>    
+   <p>
+    It requires an xvideo compliant graphic card (it is the case for 
+    nearly all the modern card). It uses hardware acceleration for 
+    yuv transformation and for rescaling.
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>sdl</heading>
+   <p>default : enabled</p>
+   <p>
+    This video output uses sdl libraries. You need at least version 1.1.6 of
+    this libraries.
+   </p>
+   <p> 
+    You may indicate the path to the sdl-config program with the
+    <verb> --with-sdl-config-path=PATH </verb> option given to the <verb>
+    configure</verb> script.
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>directx</heading>
+   <p>default: enabled on win32</p>
+   <p>
+    This video output uses Microsoft Direct X libraries. It is recommended 
+    for the win32 port.
+   </p>
+   <p>
+    You may indicate the path to directx libraries and headers with
+    the <verb>--with-directx=PATH</verb> option.
+  </sect2>
+  
+  <sect2>
+   <heading>fb</heading>
+   <p>default: enabled on Linux</p>
+   <p>
+    This is the frame buffer video output. It requires that your kernel 
+    was compiled with frame buffer support.
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>glide</heading>
+   <p>default: disabled</p>
+   <p>
+   This video output uses Glide libraries (hardware acceleration for
+   3Dfx cards).
+   </p>
+   <p> 
+    You may indicate the path to the library with the 
+   <verb>--with-glide=PATH</verb> compilation option.
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>mga</heading>
+   <p>default: disabled</p>
+   <p> 
+   It provides hardware acceleration for Matrox cards on Linux.
+   </p>
+  </sect2>
+
+  <sect2>
+   <heading>ggi</heading>
+   <p>default: disabled</p>
+  </sect2>
+  
+  <sect2>
+   <heading>aa</heading>
+   <p>default: disabled</p>
+   <p>
+    This video output uses the aalib library to display video
+    through ASCII art. It requires aalib headers (aalib1-dev under Debian)
+    to compile.
+   </p>
+  </sect2>
+ </sect1>
+ <sect1>
+  <heading>Video filters modules</heading>
+  <sect2>
+   <heading>deinterlace</heading>
+   <p>default: enabled</p>
+   <p>
+    This filter deinterlaces video. It is usefull with streams coming 
+    from a satellite broadcast.
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>wall</heading>
+   <p>default: enabled</p>
+   <p>
+    This filter allows you to have the video cut in pieces in several 
+    windows, which you can order as you wish. It can be used to generate
+    image walls with several sources. Start it with 
+   <verb> --filter wall:XxY</verb> in order to have the video cut in X rows
+   and Y columns
+   </p>
+  </sect2>
+  <sect2>
+   <heading>distort</heading>
+   <p>default: enable</p>
+   <p>
+    This filter adds a distortion effect to the video. Who said it
+    was useless ;-) ?
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>transform</heading>
+   <p>default: enable</p>
+   <p>
+    This filter rotates the video window of 90 degrees.
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>invert</heading>
+   <p>default: enabled</p>
+   <p>
+    This filter inverses colors.
+   </p>
+  </sect2>
+ </sect1>
+ <sect1>
+  <heading>Sound outputs</heading>
+  <sect2>
+   <heading>dsp</heading>
+   <p>default: enabled on Linux</p>
+   <p>
+    This is the Linux /dev/dsp output. It requires that your kernel 
+    was compiled with support for your sound card.
+   </p>
+   </sect2>
+   
+   <sect2>
+    <heading>alsa</heading>
+    <p>default: disabled</p>
+    <p>
+     This is the sound output for Advanced Linux Sound Architecture. 
+     It requires that you installed the alsa drivers and libraries.
+    </p>
+   </sect2>
+   
+   <sect2>
+    <heading>esd</heading>
+    <p>default: disabled</p>
+    <p>
+     This sound output has Enlightened Sound Daemon support
+     (usually used with Gnome). 
+     You must have the daemon and its libraries installed.
+    </p>
+   </sect2>
+   <sect2>
+    <heading>arts</heading>
+    <p>default: disabled</p>
+    <p>
+     This sound output has aRts (KDE's sound server) support.
+     You must have the daemon and its libraries installed.
+    </p>
+   </sect2>
+   
+   <sect2>
+    <heading>waveout</heading>
+    <p>default: enabled on win32</p>
+    <p>
+     This is the Wave output, which is used by the win32 port.
+    </p>
+   </sect2>
+ </sect1>
+ <sect1>
+  <heading>Input modules</heading>
+  <sect2>
+   <heading>dvd</heading>
+   <p>default: enabled</p>
+   <p>
+    This is the DVD input module. It will need libdvdcss, which can
+    be found <htmlurl url="http://www.videolan.org/libdvdcss/" 
+    name="http://www.videolan.org/libdvdcss/">.
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>dvdread</heading>
+   <p>default: disabled</p>
+   <p>
+    This is an alternative to the previous one, it uses libdvdread 
+    (which also needs libdvdcss).
+   </p>
+  </sect2>
+  <sect2>
+   <heading>vcd</heading>
+   <p>default: enabled</p>
+   <p>
+    This is the VideoCD input. 
+   </p>
+  </sect2>
+  <sect2>
+   <heading>http</heading>
+   <p>default: enabled</p>
+   <p>
+    This is the http input. You can use it for Video On Demand.
+   </p>
+  </sect2>
+  <sect2>
+   <heading>satellite</heading>
+   <p>default: disabled</p>
+   <p>
+    This is an input module that allows to read directly from a
+    Hauppauge WinTV Nova card under Linux. It requires drivers 0.9.4 
+    available from 
+   <htmlurl url="http://www.linuxtv.org/" name="linuxtv.org">.
+   </p>
+  </sect2>
+ </sect1>
+ <sect1>
+  <heading>Interface modules</heading>
+  <sect2>
+   <heading>gtk</heading>
+   <p>default: enabled</p>
+   <p>
+    This is the GTK+ interface. It needs gtk libraries (libgtk1.2 package
+    on Debian) and headers files if you are compiling it (libgtk1.2-dev 
+    package on Debian). Note that it can be used under Windows.
+   </p>
+  </sect2>
+  <sect2>
+   <heading>gnome</heading>
+   <p>default: disabled</p>
+   <p>
+    This is the Gnome interface. It needs gnome libraries (libgnome32 under
+    Debian) and headers (libgnome-dev) if you wish to compile it.
+   </p>
+  </sect2>
+  <sect2>
+   <heading>intfwin</heading>
+   <p>default: enabled on win32</p>
+   <p>
+    This is the Windows native interface. It requires Borland C++ builder 
+    to compile. You may use <verb>--with-bc-builder=PATH</verb> option
+    to specify the path to this application.
+   </p>
+  </sect2>
+
+  <sect2>
+   <heading>qt</heading>
+   <p>default: disabled</p>
+   <p>
+    This is the QT libraries interface module. You will need the libraries
+    (libqt2 package on Debian) and headers (libqt-dev) if you wish to 
+    compile it.
+   </p>
+  </sect2>
+  <sect2>
+   <heading>kde</heading>
+   <p>default: disabled</p>
+   <p>
+    This is the KDE interface module.  You will need the libraries
+    (kdelib package on Debian) and headers (kde-devel) if you wish to 
+    compile it.
+   </p>
+  </sect2>
+
+  <sect2>
+   <heading>rc</heading>
+   <p>default: enable</p>
+   <p>
+    This is the Remote Control interface module. With this one, vlc
+    is controled by sending him commands, such as play, stop, ... so 
+    that you may control vlc through a script.
+   </p>
+  </sect2>
+
+  <sect2>
+   <heading>ncurses</heading>
+   <p>default: disabled</p>
+   <p>
+    This is a text interface, using ncurses library. You will need
+    ncurses headers if you want to compile it (libncurses5-dev on Debian).
+   </p>
+  </sect2>
+  <sect2>
+   <heading>lirc</heading>
+   <p>default: disabled</p>
+   <p>
+    This interface module allows you to control vlc through a remote.
+    A lircrc example is provided to help you configure it to your remote
+    (see doc/lirc/example.lircrc).
+   </p>
+  </sect2>
+ </sect1>
+ <sect1>
+  <heading>OS support modules</heading>
+  <p> The following modules add support or different OSs. </p>
+  <sect2>
+   <heading>macosx</heading>
+   <p>default: enabled on MacOS X</p>
+   <p>
+    This is the MacOS X support module, including a native interface.
+   </p>
+  </sect2>
+  
+  <sect2>
+   <heading>qnx</heading>
+   <p>default: enabled on qnx</p>
+   <p>
+    This is the QNX RTOS support module.
+   </p>
+  </sect2>
+ </sect1>    
+
+<sect>
+ <heading>Specific use of the vlc</heading>
+ <sect1>
+  <heading>Use the vlc as a viever and decoder for the Hauppauge WinTV 
+  Nova card</heading>
+  <sect2>
+   <heading>What is required ?</heading>
+   <p>
+    At the present time, the satellite input only works under Linux. 
+    It requires that drivers version 0.9.4 of the card, drivers
+    that are being developped by the <htmlurl name="linuxtv.org"
+    url="http://www.linuxtv.org/">. 
+   </p>
+  </sect2>
+  <sect2>
+   <heading>Building the vlc with satellite support</heading>
+   <p>
+    Get the sources, either from our last .tar.gz release, 
+    or best from the cvs (see <ref name="cvs instructions"
+    id="cvs">).
+   </p>
+   <p>
+    Move to the vlc directory, then launch
+    <verb>
+     ./configure --enable-satellite
+    </verb>
+    You may add other compilation options, see <ref 
+    name="compilation instructions" id="compile">.
+    Then launch the compilation with
+    <verb>
+     make
+    </verb>
+    You may install it with (as root)
+    <verb>
+     make install
+    </verb>
+    or run it from the current directory.
+   </p>
+  </sect2>
+  <sect2>
+   <heading>Running it from the command line</heading>
+   <p>
+   Run the vlc with 
+    <verb>
+     vlc satellite:&lt;frequency(Hz)&gt;,&lt;polarization(0 for V,
+     1 for H)&lt;,
+     &gt;FEC (1 for 1/2, 2 for 2/3 ...)&gt;,&lt;symbol rate (kbytes/sec)&gt;
+    </verb>
+    You then have to select your program, either with the command line option
+    <verb>
+     --input_program <program_number (also called service ID)>
+    </verb>
+    or by choosing it in the view/programs menu.
+   </sect2>
+   <sect2>
+    <heading>Running it from the GTK/Gnome interface</heading>
+    <p>
+     Click on the "Sat" icon. In the opening box, you may enter 
+     your transponder settings, then click on "Ok". 
+    </p>
+    <p>
+     After a few seconds, the word satellite should appear under the command
+     buttons. You may now choose your program from the View/Programs menu.
+    </p>
+   </sect2>
+  </sect1>
+  <sect1>
+   <heading>Use the vlc to create image walls.</heading>
+   <p>
+    The idea is to use several video sources, each one displaying a part 
+    of the whole image, to get a bigger result.
+   </p>
+   <p> 
+    Vlc and the VideoLAN solution can provide a good way to create
+    such displays : a vls broadcasts a stream in several vlc each
+    display a part of image.
+   </p>
+   <p>
+    For this, you should use the wall filter : start vlc with 
+    <verb>
+     vlc udp: --filter wall:&lt;number of rows&gt;x&lt;number of columns&gt;
+     :&lt;number of the part to diplay&gt;
+    </verb>
+   </p>
+  </sect1>
+
+</sect>
+<sect>
+  <heading>Get more help</heading>
   <p>
   <p>
-   I'll only speak about the vlc here. There will be a howto on the whole network solution.
-   You have to tell the vlc that it will receive network streams. This can be done either by
-   using the "network" button of the interface, or in the command line : 
-   <verb>
-    vlc ts://server[:port]
-   </verb>
+   First of all, it something seems to go wrong, read and try to 
+   understand the error messages. You can have detailed messages by
+   choosing messages in the view menu, in GTK, Gnome and Win32 interfaces.
   </p>
   <p>
   </p>
   <p>
-   This works for unicast. If you are receiving a broadcasted stream, you have to specify the 
-   broadcast address : 
-   <verb>
-    vlc --broadcast broadcast_addr ts://server[:port]
-   </verb>
+   There is a FAQ page on our website :
+   <htmlurl url="http://www.videolan.org/doc/index.html" name="http://www.videolan.org/doc/index.html">.
+   If you think one question should be in the FAQ, please contact
+   <htmlurl url="mailto:videolan@videolan.org" name="videolan@videolan.org">
   </p>
   </p>
- </sect1>
-
- <sect1>
-  <heading>Developping the vlc</heading>
   <p>
   <p>
-   Christophe Massiot has written a documentation for developpers.
+   Finally, there's a users mailing list (English speaking). To subscribe, send a mail to 
+   <htmlurl url="mailto:listar@videlan.org" name="listar@videlan.org"> containing
+   "subscribe vlc" as message body.
   </p>
   </p>
- </sect1>
-
 </sect>
 </sect>
-
 </article></linuxdoc>
 </article></linuxdoc>