mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 19:51:11 +00:00
update man page to new pipeline parsing and make it more informational
Original commit message from CVS: update man page to new pipeline parsing and make it more informational
This commit is contained in:
parent
8cebfd7528
commit
1f5fa9cf82
1 changed files with 243 additions and 137 deletions
|
@ -1,4 +1,4 @@
|
|||
.TH "GStreamer" "1" "March 2001"
|
||||
.TH "GStreamer" "1" "April 2003"
|
||||
.SH "NAME"
|
||||
gst\-launch \- build and run a GStreamer pipeline
|
||||
.SH "SYNOPSIS"
|
||||
|
@ -9,136 +9,11 @@ gst\-launch \- build and run a GStreamer pipeline
|
|||
\fIGStreamer\fP pipelines.
|
||||
|
||||
In simple form, a PIPELINE\-DESCRIPTION is a list of
|
||||
elements separated by exclamation marks (!). Options may be appended to
|
||||
elements, in the form "option=value". A group of elements
|
||||
surrounded by curly braces {, } will be executed in a separate thread.
|
||||
elements separated by exclamation marks (!). Properties may be appended to
|
||||
elements, in the form \fIproperty=value\fR.
|
||||
|
||||
Connections between non-consecutive elements are created by specifying
|
||||
a element names and pad names immediately before and after the
|
||||
exclamation mark, in the form "element0.sinkpad!element1.srcpad".
|
||||
The default name given to an element is the name of its class followed by
|
||||
an index. If the element names are omitted, the previous and next
|
||||
elements in the PIPELINE-DESCRIPTION will be used. If the pad names
|
||||
are omitted, a default pad of the correct type (source or sink) is
|
||||
found on the given element, typically named "src" or "sink".
|
||||
|
||||
See the GStreamer documentation for a complete description of a
|
||||
a PIPELINE\-DESCRIPTION.
|
||||
|
||||
.SH "EXAMPLES"
|
||||
|
||||
The examples below assume that you have the correct plug-ins available.
|
||||
In general, "osssink" can be substituted with another audio output
|
||||
plug-in such as "esdsink", "alsasink", or "artsdsink". Likewise,
|
||||
"xvideosink" can be substituted with "sdlvideosink" or "aasink".
|
||||
|
||||
.B Audio playback
|
||||
|
||||
Play the mp3 music file "music.mp3" using a libmad-based plug-in and
|
||||
output to an OSS device:
|
||||
|
||||
gst\-launch filesrc location=music.mp3 ! mad ! osssink
|
||||
|
||||
Play an Ogg Vorbis format file:
|
||||
|
||||
gst\-launch filesrc location=music.ogg ! vorbisfile ! osssink
|
||||
|
||||
Play an mp3 file or stream retrieved via http:
|
||||
|
||||
gst\-launch httpsrc location=http://domain.com/music.mp3 ! mad ! osssink
|
||||
|
||||
Play an mp3 file or stream using GNOME\-VFS:
|
||||
|
||||
gst\-launch gnomevfssrc location=music.mp3 ! mad ! osssink
|
||||
|
||||
gst\-launch gnomevfssrc location=http://domain.com/music.mp3 ! mad ! osssink
|
||||
|
||||
Use GNOME\-VFS to play an mp3 file located on an SMB server:
|
||||
|
||||
gst\-launch gnomevfssrc location=smb://computer/music.mp3 ! mad ! osssink
|
||||
|
||||
.B Format conversion
|
||||
|
||||
Convert an mp3 music file to an Ogg Vorbis file:
|
||||
|
||||
gst\-launch filesrc location=music.mp3 ! mad ! vorbisenc ! filesink location=music.ogg
|
||||
|
||||
Alternatively, to convert to the FLAC format, use the command line:
|
||||
|
||||
gst\-launch filesrc location=claptrap.mp3 ! mad ! flacenc ! filesink location=test.flac
|
||||
|
||||
.B Other
|
||||
|
||||
Plays a .WAV file:
|
||||
|
||||
gst\-launch filesrc location=music.wav ! wavparse ! osssink
|
||||
|
||||
Convert a .WAV file into Ogg Vorbis (or mp3) file:
|
||||
|
||||
gst\-launch filesrc location=music.wav ! wavparse ! vorbisenc ! filesink location=music.ogg
|
||||
|
||||
gst\-launch filesrc location=music.wav ! wavparse ! mpegaudio ! filesink location=music.mp3
|
||||
|
||||
Alternatively, if you have lame installed (and have the lame plug-in),
|
||||
you can substitute lame for mpegaudio in the previous example. It gives
|
||||
better results than mpegaudio.
|
||||
|
||||
Rip all tracks from compact disc and convert them into a single mp3 file:
|
||||
|
||||
gst\-launch cdparanoia ! mpegaudio ! filesink location=cd.mp3
|
||||
|
||||
Using gst\-inspect, it is possible to discover settings for cdparanoia
|
||||
that will tell it to rip individual tracks.
|
||||
|
||||
Record sound from your audio input and encode it into an ogg file:
|
||||
|
||||
gst\-launch osssrc ! vorbisenc ! filesink location=input.ogg
|
||||
|
||||
.B Video
|
||||
|
||||
Display only the video portion of an MPEG-1 video file, outputting to
|
||||
an X display window (The "queue" element is necessary to buffer data
|
||||
between the threads):
|
||||
|
||||
gst\-launch filesrc location=JB_FF9_TheGravityOfLove.mpg ! mpegdemux video_%02d!src { queue ! mpeg2dec ! xvideosink }
|
||||
|
||||
Display the video portion of a .vob file (used on DVDs), outputting to
|
||||
an SDL window:
|
||||
|
||||
gst\-launch filesrc location=/flflfj.vob ! mpegdemux video_%02d!src { queue ! mpeg2dec ! sdlvideosink }
|
||||
|
||||
Play both video and audio portions of an MPEG movie:
|
||||
|
||||
gst\-launch filesrc location=movie.mpg ! mpegdemux video_%02d!src { queue ! mpeg2dec ! sdlvideosink } mpegdemux0.audio_%02d!src { queue ! mad ! osssink }
|
||||
|
||||
Play an AVI movie:
|
||||
|
||||
gst\-launch filesrc location=movie.avi ! avidemux video_%02d!src { queue ! windec ! sdlvideosink }
|
||||
|
||||
.B Network streaming
|
||||
|
||||
An MPEG\-1 system stream can be streamed via RTP from one machine to
|
||||
another. On the receiver, execute:
|
||||
|
||||
gst\-launch rtprecv media_type=mpeg1_sys ! mpegdemux video_%02d!src { queue ! mpeg2dec ! xvideosink } mpegdemux0.audio_%02d!src { queue ! mad ! osssink }
|
||||
|
||||
On the transmitter, execute:
|
||||
|
||||
gst\-launch filesrc location=mpeg1system.mpeg ! mpegparse ! rtpsend ip=IPorHostname
|
||||
|
||||
.B Diagnostic
|
||||
|
||||
Generate a null stream and ignore it:
|
||||
|
||||
gst\-launch fakesrc ! fakesink
|
||||
|
||||
Generate a pure tone to test the audio output:
|
||||
|
||||
gst\-launch sinesrc ! osssink
|
||||
|
||||
Generate a familiar test pattern to test the video output:
|
||||
|
||||
gst\-launch videotestsrc ! xvideosink
|
||||
For a complete description of possible PIPELINE-DESCRIPTIONS see above under
|
||||
\fIpipeline description\fR or the GStreamer documentation.
|
||||
|
||||
.
|
||||
.SH "OPTIONS"
|
||||
|
@ -148,23 +23,30 @@ Generate a familiar test pattern to test the video output:
|
|||
.B \-\-help
|
||||
Print help synopsis and available FLAGS
|
||||
.TP 8
|
||||
.B \-\-silent
|
||||
Do not output status information
|
||||
.B \-v, \-\-silent
|
||||
Output status information
|
||||
.TP 8
|
||||
.B \-\-exclude=TYPE, \-XTYPE
|
||||
.B \-XTYPE, \-\-exclude=TYPE,
|
||||
Do not output status information of TYPE
|
||||
.TP 8
|
||||
.B \-\-output=FILE, \-oFILE
|
||||
.B \-oFILE, \-\-output=FILE
|
||||
Save XML representation of pipeline to FILE and exit
|
||||
.TP 8
|
||||
.B \-f, \-\-no_fault
|
||||
Do not install a fault handler
|
||||
.TP 8
|
||||
.B \-t, \-\-trace
|
||||
Print memory allocation traces. The feature must be enabled at compile time to
|
||||
work.
|
||||
.TP 8
|
||||
.B \-\-gst\-info\-mask=FLAGS
|
||||
\fIGStreamer\fP info flags to set (list with \-\-help)
|
||||
\fIGStreamer\fP info flags to set (list with \-\-gst\-mask\-help)
|
||||
.TP 8
|
||||
.B \-\-gst\-debug\-mask=FLAGS
|
||||
\fIGStreamer\fP debugging flags to set (list with \-\-help)
|
||||
\fIGStreamer\fP debugging flags to set (list with \-\-gst\-mask\-help)
|
||||
.TP 8
|
||||
.B \-\-gst\-mask=FLAGS
|
||||
\fIGStreamer\fP info and debugging flags to set (list with \-\-help)
|
||||
\fIGStreamer\fP info and debugging flags to set (list with \-\-gst\-mask\-help)
|
||||
.TP 8
|
||||
.B \-\-gst\-plugin\-spew
|
||||
\fIGStreamer\fP info flags to set
|
||||
|
@ -172,6 +54,230 @@ Enable printout of errors while loading \fIGStreamer\fP plugins
|
|||
.TP 8
|
||||
.B \-\-gst\-plugin\-path=PATH
|
||||
Add directories separated with ':' to the plugin search path
|
||||
.TP 8
|
||||
.B \-\-gst\-plugin\-load=PLUGINS
|
||||
Preload plugins specified in a comma-separated list. Another way to specify
|
||||
plugins to preload is to use the environment variable GST_PLUGIN_PATH
|
||||
.TP 8
|
||||
.B \-\-gst\-scheduler=SCHEDULER
|
||||
Use SCHEDULER as the default scheduler
|
||||
.TP 8
|
||||
.B \-\-gst\-registry=REGISTRY
|
||||
Use the file REGISTRY as registry instead of the default
|
||||
|
||||
.SH "PIPELINE DESCRIPTION"
|
||||
|
||||
A pipeline consists \fIelements\fR and \fIlinks\fR. \fIElements\fR can be put
|
||||
into \fIbins\fR of different sorts. \fIElements\fR, \fIlinks\fR and \fIbins\fR
|
||||
can be specified in a pipeline description in any order.
|
||||
|
||||
.B Elements
|
||||
|
||||
ELEMENTTYPE \fI[PROPERTY1 ...]\fR
|
||||
|
||||
Creates an element of type ELEMENTTYPE and sets the PROPERTIES.
|
||||
|
||||
.B Properties
|
||||
|
||||
PROPERTY=VALUE ...
|
||||
|
||||
Sets the property to the specified value. You can use \fBgst\-inspect\fR(1) to
|
||||
find out about properties and allowed values of different elements.
|
||||
.br
|
||||
Enumeration properties can be set by name, nick or value.
|
||||
|
||||
.B Bins
|
||||
|
||||
\fI[BINTYPE.]\fR ( \fI[PROPERTY1 ...]\fR PIPELINE-DESCRIPTION )
|
||||
.br
|
||||
{ \fI[PROPERTY1 ...]\fR PIPELINE-DESCRIPTION }
|
||||
|
||||
Specifies that a bin of type BINTYPE is created and the given properties are
|
||||
set. Every element between the braces is put into the bin. Using curly braces
|
||||
(second line) is a short cut for using the first line and "thread" as the
|
||||
BINTYPE.
|
||||
.br
|
||||
Please not the dot that has to be used after the BINTYPE.
|
||||
|
||||
.B Links
|
||||
|
||||
\fI[[SRCELEMENT].[PAD1,...]]\fR ! \fI[[SINKELEMENT].[PAD1,...]]\fR
|
||||
|
||||
Links the element with name SRCELEMENT to the element with name SINKELEMENT.
|
||||
Names can be set on elements with the name property. If the name is omitted, the
|
||||
element that was specified directly in front of or after the link is used. This
|
||||
works across bins. If a padname is given, the link is done with these pads. If
|
||||
no pad names are given all possibilities are tried and a matching pad is used.
|
||||
If multiple padnames are given, both sides must have the same number of pads
|
||||
specified and multiple links are done in the given order.
|
||||
.br
|
||||
So the simplest link is a simple exclamation mark, that links the element to
|
||||
the left of it to the element right of it.
|
||||
.br
|
||||
Note that when specifying either pads or element names you have to include the
|
||||
dot or your syntax will be misinterpreted. This is a change to the old syntax
|
||||
used up to version 0.6 that allowed omitting the dot when only specifying a
|
||||
padname.
|
||||
|
||||
.SH "PIPELINE EXAMPLES"
|
||||
|
||||
The examples below assume that you have the correct plug-ins available.
|
||||
In general, "osssink" can be substituted with another audio output
|
||||
plug-in such as "esdsink", "alsasink", or "artsdsink". Likewise,
|
||||
"xvideosink" can be substituted with "sdlvideosink" or "aasink".
|
||||
|
||||
.B Audio playback
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=music.mp3 ! mad ! osssink
|
||||
.br
|
||||
Play the mp3 music file "music.mp3" using a libmad-based plug-in and
|
||||
output to an OSS device
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=music.ogg ! vorbisfile ! osssink
|
||||
.br
|
||||
Play an Ogg Vorbis format file
|
||||
|
||||
.B
|
||||
gst\-launch gnomevfssrc location=music.mp3 ! mad ! osssink
|
||||
.br
|
||||
.B
|
||||
gst\-launch gnomevfssrc location=http://domain.com/music.mp3 ! mad ! osssink
|
||||
.br
|
||||
Play an mp3 file or an http stream using GNOME\-VFS
|
||||
|
||||
.B
|
||||
gst\-launch gnomevfssrc location=smb://computer/music.mp3 ! mad ! osssink
|
||||
.br
|
||||
Use GNOME\-VFS to play an mp3 file located on an SMB server
|
||||
|
||||
.B Format conversion
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=music.mp3 ! mad ! vorbisenc ! filesink location=music.ogg
|
||||
.br
|
||||
Convert an mp3 music file to an Ogg Vorbis file
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=music.mp3 ! mad ! flacenc ! filesink location=test.flac
|
||||
.br
|
||||
Convert to the FLAC format
|
||||
|
||||
.B Other
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=music.wav ! wavparse ! osssink
|
||||
.br
|
||||
Plays a .WAV file
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=music.wav ! wavparse ! vorbisenc ! filesink location=music.ogg
|
||||
.br
|
||||
.B
|
||||
gst\-launch filesrc location=music.wav ! wavparse ! mpegaudio ! filesink location=music.mp3
|
||||
.br
|
||||
Convert a .WAV file into Ogg Vorbis (or mp3) file
|
||||
|
||||
Alternatively, if you have lame installed (and have the lame plug-in),
|
||||
you can substitute lame for mpegaudio in the previous example. It gives
|
||||
better results than mpegaudio.
|
||||
|
||||
.B
|
||||
gst\-launch cdparanoia ! mpegaudio ! filesink location=cd.mp3
|
||||
.br
|
||||
Rip all tracks from compact disc and convert them into a single mp3 file
|
||||
|
||||
Using \fBgst\-inspect\fR(1), it is possible to discover settings for cdparanoia
|
||||
that will tell it to rip individual tracks.
|
||||
|
||||
.B
|
||||
gst\-launch osssrc ! vorbisenc ! filesink location=input.ogg
|
||||
.br
|
||||
Record sound from your audio input and encode it into an ogg file
|
||||
|
||||
.B Video
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=JB_FF9_TheGravityOfLove.mpg ! mpegdemux ! mpeg2dec ! xvideosink
|
||||
.br
|
||||
Display only the video portion of an MPEG-1 video file, outputting to
|
||||
an X display window
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=/flflfj.vob ! mpegdemux ! mpeg2dec ! sdlvideosink
|
||||
.br
|
||||
Display the video portion of a .vob file (used on DVDs), outputting to
|
||||
an SDL window
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=movie.mpg ! mpegdemux name=demuxer ! mpeg2dec ! sdlvideosink demuxer. ! mad ! osssink
|
||||
.br
|
||||
Play both video and audio portions of an MPEG movie
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=movie.mpg ! mpegdemux name=demuxer ! { queue ! mpeg2dec ! sdlvideosink } { demuxer. ! queue ! mad ! osssink }
|
||||
.br
|
||||
Use threaded output to improve synchronization and smoothness. Threads require
|
||||
queues for buffering on thread boundaries
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=movie.avi ! avidemux name=demuxer ! { queue ! ffdecall ! sdlvideosink } { demuxer. ! queue ! mad ! osssink }
|
||||
.br
|
||||
Play an AVI movie
|
||||
|
||||
.B Network streaming
|
||||
|
||||
An MPEG\-1 system stream can be streamed via RTP from one machine to
|
||||
another.
|
||||
|
||||
.B
|
||||
gst\-launch rtprecv media_type=mpeg1_sys ! mpegdemux name=demuxer ! { queue ! mpeg2dec ! xvideosink } { demuxer. ! queue ! mad ! osssink }
|
||||
.br
|
||||
Use this command on the receiver
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=mpeg1system.mpeg ! mpegparse ! rtpsend ip=IPorHostname
|
||||
.br
|
||||
This command would be run on the transmitter
|
||||
|
||||
.B Diagnostic
|
||||
|
||||
.B
|
||||
gst\-launch fakesrc ! fakesink
|
||||
.br
|
||||
Generate a null stream and ignore it
|
||||
|
||||
.B
|
||||
gst\-launch sinesrc ! osssink
|
||||
.br
|
||||
Generate a pure tone to test the audio output
|
||||
|
||||
.B
|
||||
gst\-launch videotestsrc ! xvideosink
|
||||
.br
|
||||
Generate a familiar test pattern to test the video output
|
||||
|
||||
.B Automatic linking
|
||||
|
||||
You can use the spider element to automatically select the right elements to get
|
||||
a working pipeline.
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=musicfile ! spider ! osssink
|
||||
.br
|
||||
Play any supported audio format
|
||||
|
||||
.B
|
||||
gst\-launch filesrc location=videofile ! spider name=spider ! osssink spider. ! xvideosink
|
||||
.br
|
||||
.B
|
||||
gst\-launch filesrc location=videofile ! spider name=spider ! { queue ! osssink } { spider. ! queue ! xvideosink }
|
||||
.br
|
||||
Play any supported video format with video and audio output. The second pipeline
|
||||
uses threaded output.
|
||||
|
||||
.
|
||||
.SH "SEE ALSO"
|
||||
.BR gst\-complete (1),
|
||||
.BR gst\-register (1),
|
||||
|
|
Loading…
Reference in a new issue