From c86560a6815626b17207af1ee7368b68cc4ee5ac Mon Sep 17 00:00:00 2001 From: gferg <> Date: Mon, 28 Apr 2003 14:58:42 +0000 Subject: [PATCH] updated --- LDP/howto/docbook/HOWTO-INDEX/appsSect.sgml | 8 +- LDP/howto/docbook/HOWTO-INDEX/howtoChap.sgml | 8 +- .../docbook/HOWTO-INDEX/networkingSect.sgml | 8 +- .../VideoLAN-Quickstart.sgml | 19 +-- .../VideoLAN-Quickstart/install-vlc.sgml | 76 ++++++--- .../VideoLAN-Quickstart/install-vls.sgml | 160 ++++-------------- .../docbook/VideoLAN-Quickstart/intro.sgml | 71 ++++---- .../VideoLAN-Quickstart/plan-videolan-640.jpg | Bin 28499 -> 35040 bytes .../VideoLAN-Quickstart/vlc-streamoutput.sgml | 101 +++++------ LDP/ref/docbook/VideoLAN-Quickstart/vlc.sgml | 4 +- LDP/ref/docbook/VideoLAN-Quickstart/vod.sgml | 2 +- 11 files changed, 188 insertions(+), 269 deletions(-) diff --git a/LDP/howto/docbook/HOWTO-INDEX/appsSect.sgml b/LDP/howto/docbook/HOWTO-INDEX/appsSect.sgml index 1e380039..2236b121 100644 --- a/LDP/howto/docbook/HOWTO-INDEX/appsSect.sgml +++ b/LDP/howto/docbook/HOWTO-INDEX/appsSect.sgml @@ -1644,12 +1644,12 @@ play-back in Linux. - + VideoLAN-HOWTO, -VideoLAN Howto +VideoLAN HOWTO -Updated: May 2002. -Describes how to use the complete VideoLAN solution. +Updated: April 2003. +Describes how to use the complete VideoLAN streaming solution. diff --git a/LDP/howto/docbook/HOWTO-INDEX/howtoChap.sgml b/LDP/howto/docbook/HOWTO-INDEX/howtoChap.sgml index e04ca4fa..1718d5b0 100644 --- a/LDP/howto/docbook/HOWTO-INDEX/howtoChap.sgml +++ b/LDP/howto/docbook/HOWTO-INDEX/howtoChap.sgml @@ -3176,12 +3176,12 @@ VCR using the video4linux driver and a supported tuner card. - + VideoLAN-HOWTO, -VideoLAN Howto +VideoLAN HOWTO -Updated: May 2002. -Describes how to use the complete VideoLAN solution. +Updated: April 2003. +Describes how to use the complete VideoLAN streaming solution. diff --git a/LDP/howto/docbook/HOWTO-INDEX/networkingSect.sgml b/LDP/howto/docbook/HOWTO-INDEX/networkingSect.sgml index d435e7bf..dc9b5b95 100644 --- a/LDP/howto/docbook/HOWTO-INDEX/networkingSect.sgml +++ b/LDP/howto/docbook/HOWTO-INDEX/networkingSect.sgml @@ -1228,12 +1228,12 @@ Describes the setup, care & feeding of UUCP under Linux. - + VideoLAN-HOWTO, -VideoLAN Howto +VideoLAN HOWTO -Updated: May 2002. -Describes how to use the complete VideoLAN solution. +Updated: April 2003. +Describes how to use the complete VideoLAN streaming solution. diff --git a/LDP/ref/docbook/VideoLAN-Quickstart/VideoLAN-Quickstart.sgml b/LDP/ref/docbook/VideoLAN-Quickstart/VideoLAN-Quickstart.sgml index abc8a959..f7e61b98 100644 --- a/LDP/ref/docbook/VideoLAN-Quickstart/VideoLAN-Quickstart.sgml +++ b/LDP/ref/docbook/VideoLAN-Quickstart/VideoLAN-Quickstart.sgml @@ -1,19 +1,18 @@ + %magic-entities; - + - + - - - + + ]> @@ -72,9 +71,9 @@ Back-Cover Texts. The text of the license can be found in the appendix vlcs stream multicast - MPEG 1 - MPEG 2 - MPEG 4 + MPEG-1 + MPEG-2 + MPEG-4 DVD DivX @@ -95,7 +94,7 @@ Back-Cover Texts. The text of the license can be found in the appendix &vlc; &vlc-streamoutput; &vod; -&vlcs; +&sap; &conclusion; &fdl; diff --git a/LDP/ref/docbook/VideoLAN-Quickstart/install-vlc.sgml b/LDP/ref/docbook/VideoLAN-Quickstart/install-vlc.sgml index 00b195f4..dbf8ddb8 100644 --- a/LDP/ref/docbook/VideoLAN-Quickstart/install-vlc.sgml +++ b/LDP/ref/docbook/VideoLAN-Quickstart/install-vlc.sgml @@ -6,9 +6,9 @@ to change the default settings, you can compile VLC from sources. Under Windows VLC works under Windows 95/98/ME/2000/XP. -Download the Zipip file from the VLC Windows -download page. Unzip the file in a directory to install +download page. Launch the .exe to install VLC. @@ -53,39 +53,62 @@ deb-src http://www.videolan.org/pub/videolan/debian sources/ # apt-get update -# apt-get install gnome-vlc vlc-plugin-a52 vlc-plugin-mad vlc-plugin-ogg libdvdcss2 +# apt-get install gnome-vlc libdvdcss2 -Under Linux Redhat, Mandrake and SuSE +Under Linux Mandrake -For these distributions, use the RPM packages. + First, VLC is included in the Mandrake Linux distribution, +thus if your are running cooker, just get it from +you preferred cooker mirror. -First, install the packages liba52 and -libmad0 that should be packaged in your -distribution. If they are not, try to find the RPMs on RPMfind.net or search -the Internet. + As it is not possible to update softwares in a previous +distributions, you have to install the RPMs "by hand" if +you don't use cooker. The simplest way +is to use urpmi (command line interface) +or rpmdrake (you will find in the Mandrake Control +Center). General instrctutions about urpmi can be found +on http://www.urpmi.org +(both in french and english). urpmi-setup will make +it easier to setup urpmi to your needs: see http://plf.zarb.org/~nanardon/ +. You need at least to add main, contrib and plf sources. - + -Download the RPM packages of libdvdcss2, -libdvdpsi1, vlc -gnome-vlc, vlc-plugin-mad, vlc-plugin-ogg, vlc-plugin-a52 from the -VLC Linux -download page. + get libdvdplay, vlc, vlc-plugin-mad, vlc-plugin-a52, +gnome-vlc (or vlc-gtk) RPMs from this page and all the plugins you want. + - - - -Then install the RPM packages you have downloaded: - + install them with: -# rpm -Uhv vlc-version.i586.rpm gnome-vlc-version.i586.rpm vlc-plugin-mad-version.i586.rpm -vlc-plugin-ogg-version.i586.rpm vlc-plugin-a52-version.i586.rpm libdvdcss2-version.i586.rpm libdvdpsi1-version.i586.rpm +# urpmi libdvdplay*rpm *vlc*rpm +(urpmi will complete all the dependencies) + + + +Under Linux Redhat + +Download the RPM package vlc and the packages +listed in the required librairies and codecs +section (the other packages are just optional) from the VLC Red Hat +download page and put them all into the same directory. + +Then install the RPM packages you have downloaded: + + +# rpm -U *.rpm + + +If you have not installed all the RPM packages included with your +distribution, you may be asked to install a few of them first. + Compile the sources by yourself (for every other OS) @@ -98,9 +121,8 @@ install VLC and the needed librairies from their source code. modify the default supported modules Install the libraries - -Many libraries are needed for particular uses : - + +Many libraries are needed for particular uses : @@ -127,7 +149,7 @@ files. -Download the libraries from Download the libraries from the VLC sources download page. diff --git a/LDP/ref/docbook/VideoLAN-Quickstart/install-vls.sgml b/LDP/ref/docbook/VideoLAN-Quickstart/install-vls.sgml index e688cb62..cbe1617d 100644 --- a/LDP/ref/docbook/VideoLAN-Quickstart/install-vls.sgml +++ b/LDP/ref/docbook/VideoLAN-Quickstart/install-vls.sgml @@ -1,93 +1,11 @@ - - -Under Linux or Unix - -The method below is for any Unix or Linux supported by the -Videolan Server. It explains how to compile and install vls and the -needed librairies from sources. - -Install the librairies +Install the librairies Many librairies are needed for particular uses : @@ -96,20 +14,21 @@ Many librairies are needed for particular uses : libdvbpsi (always needed) libdvdcss if you want to be able to access encrypted DVDs, -libdvdread if you want to be able to stream DVDs. +libdvdread if you want to be able to stream DVDs, +libdvb if you want to be able to stream from a DVB card (a satellite card or a digital terrestial TV card). -Download the libraries from in the directory -version/contrib. +Download the libraries from the VLS +sources download page. - -For each librairie, uncompress, configure, compile and install : - +For each library, uncompress, configure (unless +for libdvb which doesn't have a +./configure), compile and install : @@ -138,39 +57,19 @@ contains the following line : # ldconfig - + -Install the VideoLAN Server +Install VLS - - - - -Get the most recent version of the VideoLAN Server from the public CVS : - - - - -% cvs -d:pserver:anonymous@cvs.videolan.org:/cvs/videolan login - - - -There is no password. Type enter, then : - - - -% cvs -d:pserver:anonymous@cvs.videolan.org:/cvs/videolan checkout -P -r v0_4_5 vls - To get the list of configuration options, do : @@ -186,7 +85,7 @@ Then configure vls : -if you want a basic vls without DVD support, do : +if you want a basic VLS without DVD support, do : @@ -195,7 +94,7 @@ Then configure vls : -if you want a full vls with DVD support, do : +if you want a VLS with DVD support, do : @@ -204,6 +103,16 @@ Then configure vls : +if you want a VLS with DVB support, do : + + + +% ./configure --enable-dvb + + + + + @@ -222,5 +131,4 @@ clean or make distclean as needed. - - + diff --git a/LDP/ref/docbook/VideoLAN-Quickstart/intro.sgml b/LDP/ref/docbook/VideoLAN-Quickstart/intro.sgml index 5f00e06a..ae978ae1 100644 --- a/LDP/ref/docbook/VideoLAN-Quickstart/intro.sgml +++ b/LDP/ref/docbook/VideoLAN-Quickstart/intro.sgml @@ -15,30 +15,23 @@ bandwidth networks. - - -The VideoLAN solution includes : - - +The VideoLAN solution includes : -the VideoLAN Server (VLS), which can stream MPEG 1 and 2 -files, DVDs, digital satellite channels, digital terrestial television -channels and live videos on the network in unicast or multicast, +the VideoLAN Server (VLS), which can stream MPEG-1, +MPEG-2 and MPEG-4 files, DVDs, digital satellite channels, digital terrestial +television channels and live videos on the network in unicast or +multicast, the VideoLAN Client (VLC), which can be used as a server -to stream MPEG 1, 2 and 4 files and DVDs on the network in unicast or -multicast ; or used as a client to receive, decode and display MPEG streams -under multiple operating systems. +to stream MPEG-1, MPEG-2 and MPEG-4 files and DVDs on the network in +unicast or multicast ; or used as a client to receive, decode and +display MPEG streams under multiple operating systems. - - -Here is an illustration of the complete VideoLAN solution : - - +Here is an illustration of the complete VideoLAN solution :
Global VideoLAN solution @@ -51,7 +44,7 @@ Here is an illustration of the complete VideoLAN solution : More details about the project can be found on the -VideoLAN Web site. +VideoLAN Web site. @@ -62,20 +55,21 @@ More details about the project can be found on the The VideoLAN Client (VLC) works on many platforms : Linux, Windows, Mac -OS X, BeOS, *BSD, Solaris, Familiar Linux and QNX. It can read : +OS X, BeOS, *BSD, Solaris, Familiar Linux, Yopy/Linupy and QNX. It can +read : -MPEG 1, MPEG 2 and MPEG 4 / DivX files from a hard disk +MPEG-1, MPEG-2 and MPEG-4 / DivX files from a hard disk or a CD-ROM drive, DVDs and VCDs, from a satellite card, -MPEG 1, MPEG 2 and MPEG 4 streams from the +MPEG-1, MPEG-2 and MPEG-4 streams from the network sent by VLS or VLC's stream output. @@ -84,7 +78,7 @@ network sent by VLS or VLC's stream output. -MPEG 1, MPEG 2 and MPEG 4 / DivX files, +MPEG-1, MPEG-2 and MPEG-4 / DivX files, and DVDs, @@ -116,13 +110,14 @@ The VideoLAN Server (VLS) can stream : -an MPEG 1 or MPEG 2 file stored on a hard drive or on a +an MPEG-1, MPEG-2 or MPEG-4 files stored on a hard drive or on a CD, a DVD located in a local DVD drive or copied on a hard disk, -a satellite card or a digital terrestial television card, +a satellite card or a digital terrestial television +card, an MPEG encoding card ; @@ -152,9 +147,7 @@ drive and the network connection. -VLS works under Linux and Windows, but only the Linux version -have all the functionalities. The Windows port of vls can -only stream a video from a file. +VLS works under Linux and Mac OS X. @@ -173,8 +166,8 @@ The user documentation of the VideoLAN project is composed of four documents : the VideoLAN Quickstart. This document will give you a quick overview of -of VLC, VLS, and the Video On Demand -solution. +of VLC, VLC's stream output, the Video On Demand +solution and the channel information service system. the VideoLAN @@ -192,12 +185,8 @@ document contains Frequently Asked Questions of VLC users. - - -The latest version of these documents can be found on the VideoLAN Web site. - - +The latest version of these documents can be found on the documentation page. User support @@ -217,7 +206,7 @@ the users : on VLC, streaming@videolan.org for the questions -on VLS, mini-VLCS and the network. +on VLS, mini-SAP-server and the network. @@ -239,8 +228,16 @@ page. Convention -In this document, we adopt the following conventions for the Unix -commands : +Windows users + +Some features are currently only available using +the command line interface of VLC. To run such commands, use the Windows +command line tool. + +Unix users + +Unix systems users : in this document, we adopt the following +conventions for the Unix commands : diff --git a/LDP/ref/docbook/VideoLAN-Quickstart/plan-videolan-640.jpg b/LDP/ref/docbook/VideoLAN-Quickstart/plan-videolan-640.jpg index 0a45ce0bdd93010582329c425d4337ba5d7ca6c5..011aa94ec5c3ec12c476423ac3a59f7ad5e36051 100644 GIT binary patch literal 35040 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 z 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�!lZSMzZDosSBC7=S*5u^nIDAIfH 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 with VLC +Stream and receive with VLC -Unicast an MPEG 1, 2, or 4 file +Unicast an MPEG-1, MPEG-2, or MPEG-4 / DivX file Start VLC on the server - +Open a terminal and type : -under Windows : click on File / Stream -output in the menu, check UDP and type -the IP address or the DNS name of the machine you want to stream to in the -Address box and click on OK. -Then click on File and select the MPEG 1, MPEG 2, -MPEG 4 or DivX file you want to stream. + +% vlc /media/video/video1.avi --sout udp://client.example.org + -under Linux/Unix : start VLC, click on -File, then click on the Browse -button and select the MPEG 1, MPEG 2, MPEG 4 or DivX file you want to -stream. Then check Stream output and click on -Settings. Check UDP and type -the IP address or the DNS name of the machine you want to stream to in the -Address box. Click on OK -twice. +where /media/video/video1.avi is the file +you want to stream and client.example.org is the +DNS name of the client you want to stream to (you can put an IP address +instead). -under Mac OS X, the procedure should be very similar to -Linux. - - +Under Windows, make sure that you are in the same directory +as the VLC install directory. Start VLC on the client @@ -38,29 +29,19 @@ keep the default port and click on OK. Start VLC on the server - +Open a terminal and type : -under Windows : click on File / Stream -output in the menu, check UDP and -type the IP address or the DNS name of the machine you want to -stream to in the Address box and click on -OK. Then click on Disc, -type the device name corresponding to your DVD drive, uncheck -Menus and click on OK. + +% vlc dvdold:/dev/dvd --sout udp://client.example.org + -under Linux/Unix : start VLC, click on -Disc, type the device name corresponding to your -DVD drive in the Device name box and uncheck -Use DVD menus. Then check Stream -output and click on Settings. Check -UDP and type the IP address or the DNS name of the -machine you want to stream to in the Address box. -Click on OK twice. +where /dev/dvd is the device corresponding +to your DVD drive (put D: under Windows if +D is the letter of your DVD drive) or the directory +where you copied your DVD, and client.example.org +is the DNS name of the client you want to stream to (you can put an IP +address instead). -under Mac OS X, the procedure should be very similar to -Linux. - - @@ -99,22 +80,34 @@ address (the IP addresses reserved for this purpose are from 224.0.0.0 to 239.255.255.255). Then, any machine on the network can join the multicast group by sending a request on the network, and it will automatically receive the stream. When it sends a request to leave the -group, it will automatically stop receiving the stream. The advantage of -multicast streaming is that only the machines that want to receive the -stream actually receive it, and the vls only sends one stream even if -there are multiple clients receiving it. +group, it will automatically stop receiving the stream. The advantage +of multicast streaming is that only the machines that want to receive +the stream actually receive it, and the streaming server only sends one +stream even if there are multiple clients receiving it. -Start VLC on the server side +Start VLC on the server -The procedure is the same as in the two previous sections : -the only difference is that you must type a multicast IP address -instead of a regular IP address or DNS name in the Stream -output dialog box. +Open a terminal and type : -Start VLC(s) + +% vlc /media/video/video1.avi --sout udp://239.255.12.42 --ttl 12 + -Launch VLC and click on the Net button. Then -select UDP Multicast, type the multicast IP address -and click on OK. +where /media/video/video1.avi is the file you +want to stream (remplace it with dvdold:/dev/dvd +under Unix or dvdold:D: under Windows if you want +to multicast a DVD), 239.255.12.42 is the multicast +IP address you want to stream on and 12 is the +value of the TTL (Time To Live) of your IP packets (which means that the +multicast stream will be able to cross 11 routers). + + + +Start VLC(s) on the clients + +Launch VLC and click on the Net +button. Then select UDP Multicast, type +the multicast IP address, keep the default port and click on +OK. diff --git a/LDP/ref/docbook/VideoLAN-Quickstart/vlc.sgml b/LDP/ref/docbook/VideoLAN-Quickstart/vlc.sgml index 981592ac..6be0b923 100644 --- a/LDP/ref/docbook/VideoLAN-Quickstart/vlc.sgml +++ b/LDP/ref/docbook/VideoLAN-Quickstart/vlc.sgml @@ -1,4 +1,4 @@ -The VideoLAN Client (VLC) +VLC, the universal media player Installing VLC @@ -18,7 +18,7 @@ Start VLC : under Windows, Mac OS X or BeOS, double-clic on the icone and under -To read an MPEG 1 MPEG 2 or MPEG 4 / DivX file stored on a hard drive +To read an MPEG-1 MPEG-2 or MPEG-4 / DivX file stored on a hard drive or a CD-ROM, click on the File icon or select in the menu File / Open file and select the file you want to play. diff --git a/LDP/ref/docbook/VideoLAN-Quickstart/vod.sgml b/LDP/ref/docbook/VideoLAN-Quickstart/vod.sgml index 6c990100..4607db56 100644 --- a/LDP/ref/docbook/VideoLAN-Quickstart/vod.sgml +++ b/LDP/ref/docbook/VideoLAN-Quickstart/vod.sgml @@ -29,7 +29,7 @@ seek in a file downloaded, that's what we use to seek in the video. you can use a Linux server running Apache. Other operating systems and other Web servers should work too, but we have never tested. -Make your MPEG 1, MPEG 2 or MPEG 4 / DivX files available to the +Make your MPEG-1, MPEG-2 or MPEG-4 / DivX files available to the clients on the Web server.