old-www/REF/VLC-User-Guide/x1110.html

1101 lines
12 KiB
HTML
Raw Permalink Blame History

<HTML
><HEAD
><TITLE
>Stream Output</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="
VLC user guide
"
HREF="index.html"><LINK
REL="UP"
TITLE="
The command line interface
"
HREF="cmdline.html"><LINK
REL="PREVIOUS"
TITLE="
Modules selection
"
HREF="x1087.html"><LINK
REL="NEXT"
TITLE="
Other Options
"
HREF="x1373.html"></HEAD
><BODY
CLASS="sect1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>VLC user guide</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="x1087.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Chapter 4. The command line interface</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="x1373.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="sect1"
><H1
CLASS="sect1"
><A
NAME="AEN1110"
></A
>4.4. Stream Output</H1
><DIV
CLASS="sect2"
><H2
CLASS="sect2"
><A
NAME="AEN1112"
></A
>4.4.1. Description
of the
stream output</H2
><P
>&#13;VLC's stream output allows VLC to be used as
a streaming server instead of a client ! It has very extended
capabilities
:</P
><P
></P
><UL
><LI
><P
>&#13;stream in unicast and multicast on an IPv4 or
IPv6 network everything that VLC is able to read, via UDP, RTP or
HTTP
;</P
></LI
><LI
><P
>&#13;save the input stream to a file in AVI, PS, TS or
OGG format
;</P
></LI
><LI
><P
>&#13;transcode an input stream, and then, send it, to the
network or to a file
.</P
></LI
></UL
><P
>&#13;To know about the full possibilities of VLC's stream
output, see the <A
HREF="http://www.videolan.org/streaming/features.html"
TARGET="_top"
>&#13;streaming features page</A
>
.</P
></DIV
><DIV
CLASS="sect2"
><H2
CLASS="sect2"
><A
NAME="AEN1124"
></A
>4.4.2. Architecture and syntax</H2
><P
>&#13;the stream output has a powerful architecture
that uses modules. Each module has capabilities, and you
can <EM
>chain</EM
> the modules to enhance the
possibilities
.</P
><P
>&#13;Here is the list of the modules currently available
:</P
><P
></P
><UL
><LI
><P
><EM
>standard</EM
>
"sends" the stream via an <EM
>access
output</EM
> module: for example, UDP, file, HTTP, ... You will
probably want to use this module at the end of your chains
.</P
></LI
><LI
><P
><EM
>transcode</EM
>
allows you to transcode
the audio and the video of the input stream "on the fly" (if your
computer is powerful enough)
.</P
></LI
><LI
><P
><EM
>duplicate</EM
>
allows you to create a second chain, where the
stream will be handled in an independant way
.</P
></LI
><LI
><P
><EM
>display</EM
>
allows you to
display the input stream, as VLC would normally do. Used with the
<EM
>duplicate</EM
> module, this allows you to view the
stream as you send it
.</P
></LI
><LI
><P
><EM
>es</EM
>
allows you to make separate Elementary Etreams (ES)
out of an input stream
.</P
></LI
></UL
><P
>&#13;Each of these modules may take options. Here is the
syntax that you must use
:</P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="screen"
>&#13;<TT
CLASS="prompt"
>% </TT
><TT
CLASS="userinput"
><B
>vlc input_stream --sout '#module1{option1=...,option2=...}:#module2{option1=...,option2=...}:...'</B
></TT
>
</PRE
></FONT
></TD
></TR
></TABLE
><P
>&#13;For example, to transcode a stream and send it, use
:</P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="screen"
>&#13;<TT
CLASS="prompt"
>% </TT
><TT
CLASS="userinput"
><B
>vlc input_stream --sout '#transcode{options}:#standard{options}'</B
></TT
>
</PRE
></FONT
></TD
></TR
></TABLE
></DIV
><DIV
CLASS="sect2"
><H2
CLASS="sect2"
><A
NAME="AEN1155"
></A
>4.4.3. Description of the modules</H2
><DIV
CLASS="sect3"
><H3
CLASS="sect3"
><A
NAME="AEN1157"
></A
>4.4.3.1. standard (alias std)</H3
><P
>&#13;Sends a stream
.</P
><P
>Options:</P
><P
></P
><UL
><LI
><P
><EM
>access</EM
>:
how to send
:
<EM
>file</EM
>, <EM
>udp</EM
>,
<EM
>rtp</EM
>, <EM
>http</EM
>.</P
></LI
><LI
><P
><EM
>mux</EM
>:
which muxer (ie, which format) will be used. It can
be one of
<EM
>avi</EM
>
(for AVI format)
,
<EM
>ogg</EM
>
(for OGG format)
,
<EM
>ps</EM
>
(for MPEG2-PS format)
,
<EM
>ts</EM
>
(for MPEG2-TS format)
.</P
></LI
><LI
><P
><EM
>url</EM
>:
if you use the
<EM
>file</EM
> access, it will be the location where to
store the stream; if you use another access, it will be the unicast or
multicast IP address where you want to stream
.</P
></LI
><LI
><P
><EM
>sap</EM
>:
if you use the <EM
>udp</EM
> or
<EM
>rtp</EM
> accesses, use this option to announce your
stream, using SAP/SDP. This option contains the name under which you
want to announce the program
.</P
></LI
><LI
><P
><EM
>slp</EM
>:
like sap, but use the SLP protocol. You need
to have libslp on your system
.</P
></LI
><LI
><P
><EM
>sap_ipv</EM
>:
if you use the <EM
>sap</EM
> option,
use this option to specify if you want to send the SAP announces in
IPv4 or IPv6. The value of this option is <EM
>4</EM
> or
<EM
>6</EM
>
si vous utilisez <EM
>sap</EM
>, utilisez
ceci pour sp<73>cifier si vous d<>sirez envoyer les annonces SAP en IPv4
-d<>faut- ou IPv6. La valeur <20> utiliser est <EM
>4</EM
> ou
<EM
>6</EM
>
.</P
></LI
></UL
><DIV
CLASS="note"
><P
></P
><TABLE
CLASS="note"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/note.gif"
HSPACE="5"
ALT="Note"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>&#13;If you are streaming in multicast, you may want to
use the global option <B
CLASS="command"
>--ttl 12</B
> to set the TTL to a
value superior to 1.
</P
></TD
></TR
></TABLE
></DIV
></DIV
><DIV
CLASS="sect3"
><H3
CLASS="sect3"
><A
NAME="AEN1200"
></A
>4.4.3.2. display</H3
><P
>&#13;Displays the stream
.</P
><P
>Options:</P
><P
></P
><UL
><LI
><P
><EM
>noaudio</EM
>:
Ignore audio
.</P
></LI
><LI
><P
><EM
>novideo</EM
>:
Ignore video
.</P
></LI
></UL
></DIV
><DIV
CLASS="sect3"
><H3
CLASS="sect3"
><A
NAME="AEN1211"
></A
>4.4.3.3. duplicate</H3
><P
>&#13;Duplicates the stream to a new stream output chain
.</P
><P
>Options:</P
><P
></P
><UL
><LI
><P
><EM
>dst</EM
>:
A new stream output chain of modules, as described
earlier
.</P
></LI
></UL
></DIV
><DIV
CLASS="sect3"
><H3
CLASS="sect3"
><A
NAME="AEN1219"
></A
>4.4.3.4. transcode</H3
><P
>&#13;Changes the codec and/or bitrates for a stream
.</P
><P
>Options:</P
><P
></P
><UL
><LI
><P
><EM
>acodec</EM
>:
the new audio codec. It can be one of
<EM
>mpga</EM
> (MPEG audio layer 2), <EM
>a52</EM
>
or <EM
>ac3</EM
> (AC3 sound) or <EM
>vorb</EM
>
(Vorbis)
</P
></LI
><LI
><P
><EM
>ab</EM
>:
audio bitrate in Kbps
.</P
></LI
><LI
><P
><EM
>vcodec</EM
>:
the new video codec. It can be one of
<EM
>mp4v</EM
> (MPEG4), <EM
>mpgv</EM
>
(MPEG1), <EM
>DIV1</EM
>, <EM
>DIV2</EM
>,
<EM
>DIV3</EM
> (DivX 1,2,3), <EM
>H263</EM
>
(H263), <EM
>I263</EM
> (H263I), <EM
>WMV1</EM
>
or <EM
>WMV2</EM
> (Windows Media Video 1 or 2),
<EM
>MJPG</EM
> (MJPEG), <EM
>MJPB</EM
>
(MJPEGB)
.</P
></LI
><LI
><P
><EM
>width</EM
>:
video width
.</P
></LI
><LI
><P
><EM
>height</EM
>:
video height
.</P
></LI
><LI
><P
><EM
>vb</EM
>:
video bitrate in kbps
.</P
></LI
><LI
><P
><EM
>vt</EM
>:
video bitrate tolerance in bps
.</P
></LI
><LI
><P
><EM
>deinterlace</EM
>:
deinterlace the stream
.</P
></LI
><LI
><P
><EM
>croptop</EM
>:
number of pixels removed from the top of the video
.</P
></LI
><LI
><P
><EM
>cropbottom</EM
>:
number of pixel removed from the bottom of the video
.</P
></LI
><LI
><P
><EM
>cropleft</EM
>:
number of pixels removed from the left of the video
.</P
></LI
><LI
><P
><EM
>cropright</EM
>:
number of pixels removed from the right of the video
.</P
></LI
><LI
><P
><EM
>hq</EM
>:
high quality transcoding (uses more CPU)
.</P
></LI
><LI
><P
><EM
>qmin</EM
>:
minimum video quantiser scale (VBR)
</P
></LI
><LI
><P
><EM
>qmax</EM
>:
maximum video quantiser scale (VBR)
.</P
></LI
></UL
></DIV
><DIV
CLASS="sect3"
><H3
CLASS="sect3"
><A
NAME="AEN1284"
></A
>4.4.3.5. es</H3
><P
>&#13;Make separate Elementary Streams
.</P
><P
>Options:</P
><P
></P
><UL
><LI
><P
><EM
>access_audio</EM
>:
how to send the audio track:
<EM
>file</EM
>, <EM
>udp</EM
>,
<EM
>rtp</EM
> or <EM
>http</EM
>
.</P
></LI
><LI
><P
><EM
>access_video</EM
>:
how to send the vid<69>o track:
<EM
>file</EM
>, <EM
>udp</EM
>,
<EM
>rtp</EM
> or <EM
>http</EM
>
.</P
></LI
><LI
><P
><EM
>access</EM
>:
if you want the audio and the video tracks to use
the same access, use this option instead of the two above
.</P
></LI
><LI
><P
><EM
>mux_audio</EM
>:
which muxer (ie, which format) will be used for the
audio track. It can be one of <EM
>avi</EM
> (for AVI format),
<EM
>ogg</EM
> (for OGG format), <EM
>ps</EM
> (for
MPEG2-PS format), <EM
>ts</EM
> (for MPEG2-TS format)
.</P
></LI
><LI
><P
><EM
>mux_video</EM
>:
which muxer (ie, which format) will be used for the
video track. It can be one of <EM
>avi</EM
> (for AVI format),
<EM
>ogg</EM
> (for OGG format), <EM
>ps</EM
> (for
MPEG2-PS format), <EM
>ts</EM
> (for MPEG2-TS format)
.</P
></LI
><LI
><P
><EM
>mux</EM
>:
if you want the audio and the video tracks to use
the same muxer, use this option instead of the two above
.</P
></LI
><LI
><P
><EM
>url_audio</EM
>:
if you use the <EM
>file</EM
> access, it
will be the location where to store the audio track; if you use another
access, it will be the unicast or multicast IP address where you want to
stream
.</P
></LI
><LI
><P
><EM
>url_video</EM
>:
if you use the <EM
>file</EM
> access, it
will be the location where to store the vid<69>o track; if you use another
access, it will be the unicast or multicast IP address where you want to
stream
.</P
></LI
><LI
><P
><EM
>url</EM
>:
if you want the audio and the video tracks to use
the same url, use this option instead of the two above
.</P
></LI
></UL
><DIV
CLASS="note"
><P
></P
><TABLE
CLASS="note"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/note.gif"
HSPACE="5"
ALT="Note"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>&#13;In the <EM
>url</EM
> options, if you use
the <EM
>file</EM
> access, you can use the following macros
in the filename:
</P
><P
></P
><UL
><LI
><P
><EM
>%n</EM
> =
stream number
;</P
></LI
><LI
><P
><EM
>%c</EM
> = FOURCC ;</P
></LI
><LI
><P
><EM
>%m</EM
> =
muxer
;</P
></LI
><LI
><P
><EM
>%a</EM
> = access.</P
></LI
></UL
></TD
></TR
></TABLE
></DIV
></DIV
><DIV
CLASS="sect3"
><H3
CLASS="sect3"
><A
NAME="AEN1351"
></A
>4.4.3.6. Miscellaneous</H3
><P
>&#13;Here are a few additional global options
</P
><P
></P
><UL
><LI
><P
><EM
>--no-sout-audio</EM
>
disables audio stream output
.</P
></LI
><LI
><P
><EM
>--no-sout-video</EM
>
disables video stream output
.</P
></LI
></UL
><P
>&#13; The stream output also offers a simplified syntax,
with which you can only you use the <EM
>standard</EM
> module
main options
:</P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="screen"
>&#13;<TT
CLASS="prompt"
>% </TT
><TT
CLASS="userinput"
><B
>vlc input_stream --sout access/mux:url</B
></TT
>
</PRE
></FONT
></TD
></TR
></TABLE
><P
>&#13; where <EM
>access</EM
>,
<EM
>mux</EM
> and <EM
>url</EM
> are as defined in
the options of the standard module
.</P
></DIV
></DIV
><DIV
CLASS="sect2"
><H2
CLASS="sect2"
><A
NAME="AEN1370"
></A
>4.4.4. Examples</H2
><P
>&#13;To understand fully the complex syntax of VLC's
stream output, please look at the use cases of the VideoLAN HOWTO
.</P
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="x1087.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="x1373.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Modules selection</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="cmdline.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Other Options</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>