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",
"osxaudiosink", or "artsdsink".
Likewise, "xvimagesink" can be substituted with
"ximagesink", "sdlvideosink",
"osxvideosink", or "aasink". Keep in
mind though that different sinks might accept different
formats and even the same sink might accept different
formats on different machines, so you might need to add
converter elements like audioconvert and audioresample (for
audio) or ffmpegcolorspace (for video) in front of the sink
to make things work.
Audio playback
gst−launch filesrc location=music.mp3 ! mad !
audioconvert ! audioresample ! osssink
Play the mp3 music file "music.mp3" using a
libmad-based plug-in and output to an OSS device
gst−launch filesrc location=music.ogg ! oggdemux
! vorbisdec ! audioconvert ! audioresample ! osssink
Play an Ogg Vorbis format file
gst−launch gnomevfssrc location=music.mp3 ! mad
! osssink
gst−launch gnomevfssrc
location=http://domain.com/music.mp3 ! mad ! audioconvert !
audioresample ! osssink
Play an mp3 file or an http stream using GNOME−VFS
gst−launch gnomevfssrc
location=smb://computer/music.mp3 ! mad ! audioconvert !
audioresample ! osssink
Use GNOME−VFS to play an mp3 file located on an SMB
server
Format conversion
gst−launch filesrc location=music.mp3 ! mad !
audioconvert ! vorbisenc ! oggmux ! filesink
location=music.ogg
Convert an mp3 music file to an Ogg Vorbis file
gst−launch filesrc location=music.mp3 ! mad !
audioconvert ! flacenc ! filesink location=test.flac
Convert to the FLAC format
Other
gst−launch filesrc location=music.wav ! wavparse
! audioconvert ! audioresample ! osssink
Plays a .WAV file that contains raw audio data (PCM).
gst−launch filesrc location=music.wav ! wavparse
! audioconvert ! vorbisenc ! oggmux ! filesink
location=music.ogg
gst−launch filesrc location=music.wav ! wavparse !
audioconvert ! lame ! filesink location=music.mp3
Convert a .WAV file containing raw audio data into an Ogg
Vorbis or mp3 file
gst−launch cdparanoiasrc mode=continuous !
audioconvert ! lame ! id3v2mux ! filesink
location=cd.mp3
rips all tracks from compact disc and convert them into a
single mp3 file
gst−launch cdparanoiasrc track=5 ! audioconvert
! lame ! id3v2mux ! filesink location=track5.mp3
rips track 5 from the CD and converts it into a single mp3
file
Using gst−inspect(1), it is possible to
discover settings like the above for cdparanoiasrc that will
tell it to rip the entire cd or only tracks of it.
Alternatively, you can use an URI and gst-launch-0.10 will
find an element (such as cdparanoia) that supports that
protocol for you, e.g.: gst−launch cdda://5 ! lame
vbr=new vbr-quality=6 ! filesink location=track5.mp3
gst−launch osssrc ! audioconvert ! vorbisenc !
oggmux ! filesink location=input.ogg
records sound from your audio input and encodes it into an
ogg file
Video
gst−launch filesrc
location=JB_FF9_TheGravityOfLove.mpg ! dvddemux ! mpeg2dec !
xvimagesink
Display only the video portion of an MPEG-1 video file,
outputting to an X display window
gst−launch filesrc location=/flflfj.vob !
dvddemux ! mpeg2dec ! sdlvideosink
Display the video portion of a .vob file (used on DVDs),
outputting to an SDL window
gst−launch filesrc location=movie.mpg ! dvddemux
name=demuxer demuxer. ! queue ! mpeg2dec ! sdlvideosink
demuxer. ! queue ! mad ! audioconvert ! audioresample !
osssink
Play both video and audio portions of an MPEG movie
gst−launch filesrc location=movie.mpg !
mpegdemux name=demuxer demuxer. ! queue ! mpeg2dec !
ffmpegcolorspace ! sdlvideosink demuxer. ! queue ! mad !
audioconvert ! audioresample ! osssink
Play an AVI movie with an external text subtitle stream
This example also shows how to refer to specific pads by
name if an element (here: textoverlay) has multiple sink or
source pads.
gst−launch textoverlay name=overlay !
ffmpegcolorspace ! videoscale ! autovideosink filesrc
location=movie.avi ! decodebin2 ! ffmpegcolorspace !
overlay.video_sink filesrc location=movie.srt ! subparse !
overlay.text_sink
Play an AVI movie with an external text subtitle stream
using playbin2
gst−launch playbin2
uri=file:///path/to/movie.avi
suburi=file:///path/to/movie.srt
Network streaming
Stream video using RTP and network elements.
gst−launch v4l2src !
video/x-raw-yuv,width=128,height=96,format=’(fourcc)’UYVY
! ffmpegcolorspace ! ffenc_h263 ! video/x-h263 ! rtph263ppay
pt=96 ! udpsink host=192.168.1.1 port=5000
sync=false
Use this command on the receiver
gst−launch udpsrc port=5000 ! application/x-rtp,
clock-rate=90000,payload=96 ! rtph263pdepay queue-delay=0 !
ffdec_h263 ! xvimagesink
This command would be run on the transmitter
Diagnostic
gst−launch -v fakesrc num-buffers=16 !
fakesink
Generate a null stream and ignore it (and print out
details).
gst−launch audiotestsrc ! audioconvert !
audioresample ! osssink
Generate a pure sine tone to test the audio output
gst−launch videotestsrc ! xvimagesink
gst−launch videotestsrc ! ximagesink
Generate a familiar test pattern to test the video
output
Automatic linking
You can use the decodebin element to automatically select
the right elements to get a working pipeline.
gst−launch filesrc location=musicfile !
decodebin ! audioconvert ! audioresample ! osssink
Play any supported audio format
gst−launch filesrc location=videofile !
decodebin name=decoder decoder. ! queue ! audioconvert !
audioresample ! osssink decoder. ! ffmpegcolorspace !
xvimagesink
Play any supported video format with video and audio output.
Threads are used automatically. To make this even easier,
you can use the playbin element:
gst−launch playbin
uri=file:///home/joe/foo.avi
Filtered connections
These examples show you how to use filtered caps.
gst−launch videotestsrc !
’video/x-raw-yuv,format=(fourcc)YUY2;video/x-raw-yuv,format=(fourcc)YV12’
! xvimagesink
Show a test image and use the YUY2 or YV12 video format for
this.
gst−launch osssrc !
’audio/x-raw-int,rate=[32000,64000],width=[16,32],depth={16,24,32},signed=(boolean)true’
! wavenc ! filesink location=recording.wav
record audio and write it to a .wav file. Force usage of
signed 16 to 32 bit samples and a sample rate between 32kHz
and 64KHz.
|