* big update of Henri's howto
authorJohan Bilien <jobi@videolan.org>
Tue, 16 Apr 2002 22:13:28 +0000 (22:13 +0000)
committerJohan Bilien <jobi@videolan.org>
Tue, 16 Apr 2002 22:13:28 +0000 (22:13 +0000)
doc/vlc-howto.sgml

index 7afb27e..fcf4425 100644 (file)
@@ -2,8 +2,8 @@
 <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.4, 12 may 2001</date>
+ <author>by the Videolan Team<tt><htmlurl url="mailto:videolan@videlan.org" name="videolan@videlan.org"></tt></author>
+ <date>v0.0.9, 16 april 2002</date>
 
  <abstract>
   This document describes how to use the vlc (VideoLAN client) to read DVDs and mpeg files and DVDs.
 
  <abstract>
   This document describes how to use the vlc (VideoLAN client) to read DVDs and mpeg files and DVDs.
@@ -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>
@@ -48,7 +49,7 @@
 
   <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:
+   Johan Bilien, and the VideoLAN team. It can be found at:
    <htmlurl url="http://www.videolan.org/doc.html"
    name="http://www.videolan.org/doc.html">.
   </p>
    <htmlurl url="http://www.videolan.org/doc.html"
    name="http://www.videolan.org/doc.html">.
   </p>
 </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>
    </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>
     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 
+    diretory 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>
+    Decompress the archive with your favourite extracter in a directory of your
+    choice.
+   </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/index.html" 
+   url="http://www.videolan.org/libdvdcss/download/index.html">
   </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> 
-</sect>    
-    
-<sect>
- <heading>Using the vlc</heading>
- <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.
- </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>
-   </sect2>  
+  <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>
    <sect2>
-    <heading>What is this DVD device you keep talking about</heading>
+    <heading>Other OS</heading>
     <p>
     <p>
-     This is a file which is "linked" somehow to your dvd device.
+    To do ...
     </p>
     </p>
-    <sect3>
-     <heading>Linux users</heading>
+   </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>
      <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.
+      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>
      </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).
+      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>
-    </sect3>
-    <sect3>
-     <heading>BeOS users</heading>
      <p>
      <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.
+      If nothing appears and you are sure that a program is broadcasted 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>
      </p>
-    </sect3>
-    <sect3>
-     <heading>Other OS</heading>
+    </sect2>
+    <sect2>
+     <heading>Without VideoLAN Channel Server</heading>
      <p>
      <p>
-     To do ...
+      Simply choose clicking on the network button, then on ok should be 
+      sufficient in most cases.
      </p>
      </p>
-    </sect3>
-   </sect2>
- </sect1>
+     <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>
+ <heading>The graphical interface</heading>
+ <p>
+  Please note that the gnome, gtk and win32 interfaces are currently the most
+  advanced. The following descriptions refer to them.
+ </p>
  <sect1>
  <sect1>
-  <heading>Using the interface</heading>
+  <heading>Opening a stream</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", ...
+   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>
   </p>
+ <sect1>
+  <heading>Basic stream control</heading>
   <p>
   <p>
-   For Dvd's you can choose directly from the "open" box the title & chapter 
-   you want to play.
+   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>
  <sect1>
  <sect1>
-  <heading>Fullscreen - chapters - features</heading>
+  <heading>DVD and VCD navigation</heading>
   <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.
+   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>
   </p>
+ </sect1>
+ <sect1>
+  <heading>Programs, audio and subtitles</heading>
   <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.
+   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>
   <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.
+   In DVDs, if different angles are availables, they will be treated as
+   different programs.
   </p>
   <p>
   </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.
+   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>
- </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/vlrrc 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>
+   <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>
+  </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>
+   <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>
   </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>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 libs 
    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 packet 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>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. If you are a confirmed user, you 
+   may try the "-vvv" option which makes the vlc very verbose.
   </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.html" name="http://www.videolan.org/doc.html">.
+   If you think one question should be in the FAQ, please contact
+   <htmlurl url="mailto:videolan@videlan.org" name="videolan@videlan.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>