[ Prev ] [ Index ] [ Next ]

Gstreamer

Created Monday 30 June 2008

Webcam

Enregistrer image et son:

gst-launch-0.10 v4l2src ! video/x-raw-yuv,width=640,height=480 ! ffmpegcolorspace ! queue ! videorate ! video/x-raw-rgb,rate=15/1 ! ffmpegcolorspace ! theoraenc ! oggmux name=mux ! filesink location=foo.ogg alsasrc ! audio/x-raw-int,channels=1,rate=22025,depth=16 ! queue ! audioconvert ! vorbisenc ! mux.

This example uses several tricks to adjust the rates, and queue to improve performance (and hopefully not lose any data).

ffmpegcolorspace est nécessaire pour convertir le format iSight video/x-raw-yuv en video/x-raw-rgb

Pour avoir un feedback visuel:

gst-launch-0.10 v4l2src ! video/x-raw-yuv,width=640,height=480 ! tee name=img ! queue ! xvimagesink img. ! ffmpegcolorspace ! queue ! videorate ! video/x-raw-rgb,rate=15/1 ! ffmpegcolorspace ! theoraenc ! oggmux name=mux ! filesink location=foo.ogg alsasrc ! audio/x-raw-int,channels=1,rate=22025,depth=16 ! queue ! audioconvert ! vorbisenc ! mux.

Source: http://automatist.net/techdaze/GStreamer

MPEG2 with time overlay:

gst-launch-0.10 \ v4l2src ! video/x-raw-yuv,width=640,height=480 ! tee name=video \ video. ! ffmpegcolorspace ! queue ! cairotimeoverlay ! xvimagesink \ video. ! ffmpegcolorspace ! queue ! videorate ! video/x-raw-rgb,rate=15/1 ! ffmpegcolorspace ! ffenc_mpeg2video ! mux. \ alsasrc ! audio/x-raw-int,channels=1,depth=16 ! queue ! audioconvert ! lame bitrate=192 ! mux. \ ffmux_mpeg name=mux ! filesink location=foo.mpeg

MPEG2, time overlay, date:

gst-launch-0.10 \ v4l2src ! video/x-raw-yuv,width=640,height=480 ! ffmpegcolorspace ! cairotextoverlay text="`date`" ! tee name=video \ video. ! queue ! cairotimeoverlay ! xvimagesink \ video. ! queue ! ffmpegcolorspace ! videorate ! video/x-raw-rgb,rate=15/1 ! ffmpegcolorspace ! ffenc_mpeg2video ! mux. \ alsasrc ! audio/x-raw-int,channels=1,depth=16 ! queue ! audioconvert ! lame bitrate=192 ! mux. \ ffmux_mpeg name=mux ! filesink location=foo.mpeg

Ne marche pas bien

• Convert to OGG/Theora

gst-launch-0.10 filesrc location="test.avi" ! decodebin name="decode" decode. ! queue ! ffmpegcolorspace ! theoraenc quality=32 ! oggmux name=mux ! filesink location="test.ogg" decode. ! queue ! audioconvert ! vorbisenc ! queue ! mux.

• Play OGG/Theora

gst-launch-0.10 filesrc location=fulltime3.ogg ! oggdemux name=demux demux. ! video/x-theora ! queue ! theoradec ! ffmpegcolorspace ! xvimagesink demux. ! audio/x-vorbis ! queue ! vorbisdec ! audioconvert ! alsasink

• Convert anything to AVI/MPEG2+MP3

gst-launch-0.10 filesrc location=fulltime3.ogg ! decodebin name=demux demux. ! ffmpegcolorspace ! ffenc_mpeg2video ! video/mpeg ! mux. demux. ! audioconvert ! lame ! audio/mpeg ! mux. ffmux_mpeg name=mux ! filesink location=fulltime3.mpeg

gst-launch-0.10 filesrc location=fulltime3.ogg ! decodebin name=demux demux. ! queue ! ffmpegcolorspace ! ffenc_mpeg2video ! video/mpeg ! queue ! mux. demux. ! queue ! audioconvert ! lame ! audio/mpeg ! queue ! mux. ffmux_mpeg name=mux ! filesink location=fulltime3.mpeg

• Convert OGG/Theora to AVI/MPEG2+MP3

gst-launch-0.10 filesrc location=fulltime3.ogg ! oggdemux name=demux demux. ! video/x-theora ! queue ! theoradec ! ffmpegcolorspace ! ffenc_mpeg2video ! video/mpeg ! mux. demux. ! audio/x-vorbis ! vorbisdec ! audioconvert ! lame ! audio/mpeg ! mux. ffmux_mpeg name=mux ! filesink location=fulltime3.mpeg


No backlinks to this page.