Difference between revisions of "DM36x GStreamer-1.0 pipelines"

From RidgeRun Developer Connection
Jump to: navigation, search
Line 4: Line 4:
  
 
===Display videotest pattern===
 
===Display videotest pattern===
 +
 +
<pre style="background:#d6e4f1">
 +
gst-launch-1.0 -e videotestsrc ! 'video/x-raw,format=(string)UYVY,width=640,height=480' ! perf ! v4l2sink device=/dev/video2 max-num-buffers=3
 +
</pre>
  
 
===Display video===
 
===Display video===
  
=Video Decoding=
+
<pre style="background:#d6e4f1">
 +
gst-launch-1.0 -e v4l2src ! 'video/x-raw,format=(string)UYVY,width=640,height=480' ! perf ! v4l2sink device=/dev/video2 max-num-buffers=3
 +
</pre>
  
 
=Video Encoding=
 
=Video Encoding=
Line 97: Line 103:
 
</pre>
 
</pre>
  
==Stream H-264 encoded video and display video with Dual Resizer==
+
=Stream H-264 encoded video and display video with Dual Resizer=
  
 
<pre style="background:#d6e4f1">
 
<pre style="background:#d6e4f1">
Line 104: Line 110:
 
</pre>
 
</pre>
  
==Display video and record JPEG encoded video with Dual Resizer==
+
=Display video and record JPEG encoded video with Dual Resizer=
  
 
<pre style="background:#d6e4f1">
 
<pre style="background:#d6e4f1">

Revision as of 11:54, 27 August 2013

Introduction

Live Preview

Display videotest pattern

gst-launch-1.0 -e videotestsrc ! 'video/x-raw,format=(string)UYVY,width=640,height=480' ! perf ! v4l2sink device=/dev/video2 max-num-buffers=3

Display video

gst-launch-1.0 -e v4l2src ! 'video/x-raw,format=(string)UYVY,width=640,height=480' ! perf ! v4l2sink device=/dev/video2 max-num-buffers=3

Video Encoding

Video test pattern H-264

gst-launch-1.0 videotestsrc ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_h264enc ! queue ! perf ! qtmux ! filesink location=test.mp4

Video test pattern JPEG

gst-launch-1.0 videotestsrc num-buffers=60 ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_jpegenc ! queue ! perf ! qtmux ! filesink location=test.mov

Video test pattern MPEG-4

gst-launch-1.0 videotestsrc ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_mpeg4enc ! queue ! perf ! qtmux ! filesink location=test.mp4

Video capture H-264

gst-launch-1.0 v4l2src ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_h264enc ! queue ! perf ! qtmux ! filesink location=test.mp4

Video capture JPEG

gst-launch-1.0  -e v4l2src ! "video/x-raw, format=(string)NV12, width=640, height=480" ! ce_jpegenc num-out-buffers=5 ! perf ! queue ! qtmux ! filesink location=test.mov

Video capture MPEG-4

gst-launch-1.0 v4l2src ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_mpeg4enc ! queue ! perf ! qtmux ! filesink location=test.mp4

RTP Video Streaming

Stream H.264 video test pattern over RTP

gst-launch-1.0 videotestsrc ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_h264enc ! queue ! perf ! rtph264pay ! udpsink port=5000 host=10.251.101.15

Stream JPEG video test pattern over RTP

Server:
gst-launch-1.0 videotestsrc ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_jpegenc num-out-buffers=5 ! perf ! queue ! rtpjpegpay ! udpsink port=5000 host=10.251.101.14 -v
Client:
gst-launch udpsrc port=5000 ! 'application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)JPEG, payload=(int)96' ! rtpjpegdepay ! decodebin ! fpsdisplaysink sync=false

Stream MPEG-4 video test pattern over RTP

gst-launch-1.0 videotestsrc ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_mpeg4enc ! queue ! perf ! rtpmp4vpay ! udpsink port=5000 host=10.251.101.15

Stream H.264 encoded video capture over RTP

gst-launch-1.0 v4l2src ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_h264enc ! queue ! perf ! rtph264pay ! udpsink port=5000 host=10.251.101.15

Stream JPEG encoded video capture over RTP

Server:
gst-launch-1.0 v4l2src ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_jpegenc num-out-buffers=5 ! perf ! queue ! rtpjpegpay ! udpsink port=5000 host=10.251.101.14 -v
Client:
gst-launch udpsrc port=5000 ! 'application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)JPEG, payload=(int)96' ! rtpjpegdepay ! decodebin ! fpsdisplaysink sync=false

Stream MPEG-4 encoded video capture over RTP

gst-launch-1.0 v4l2src ! 'video/x-raw, format=(string)NV12, width=640, height=480' ! ce_mpeg4enc ! queue ! perf ! rtpmp4vpay ! udpsink port=5000 host=10.251.101.15

Stream H-264 encoded video and display video with Dual Resizer

gst-launch-1.0 -e v4l2src chain-ipipe=false max-num-buffers=5 ! 'video/x-raw,format=(string)NV12,width=640,height=480' ! queue ! dualresizer name=drs drs.rsza ! perf ! ce_h264enc target-bitrate=
3000000 ! rtph264pay ! udpsink port=5000 host=10.251.101.14 drs.rszb ! queue ! 'video/x-raw,format=(string)UYVY,width=320,height=240' ! perf ! v4l2sink device=/dev/video2 max-num-buffers=3

Display video and record JPEG encoded video with Dual Resizer

gst-launch-1.0 -e v4l2src chain-ipipe=false max-num-buffers=6 ! 'video/x-raw,format=(string)UYVY,width=640,height=480' ! dualresizer name=drs drs.rsza ! perf ! v4l2sink device=/dev/video2 
max-num-buffers=3 drs.rszb ! queue ! 'video/x-raw,format=(string)UYVY,width=320,height=240' ! perf ! ce_jpegenc ! qtmux ! filesink location=testA.mov async=false enable-last-sample=false -v