LeopardBoard DM365 Video Streaming Demo with EVAL SDK

From RidgeRun Developer Connection
Jump to: navigation, search

The following guide will show how to use Gstreamer for video streaming. There are two ways to accomplish this task:

  • Use the pre-built generic SD image, which can be download from SD_images at our download center download center instructions for booting from SD can be found inside the README file that comes with the SD image.

Steps to follow if using pre-built SD image

After booting the LeopardBoard with the precompiled SDK SD image use the following pipelines

  • LeopardBoard
HOST_ADDR=<Client's IP address>
PORT=3000

gst-launch v4l2src always-copy=FALSE chain-ipipe=true ! video/x-raw-yuv,format=\(fourcc\)NV12, width=1280, height=720, framerate=\(fraction\)23/1 ! queue ! dmaienc_h264 encodingpreset=2 ratecontrol=2 intraframeinterval=23 idrinterval=46 targetbitrate=3000000\
 ! rtph264pay !udpsink port=$PORT host=$HOST_ADDR sync=false enable-last-buffer=false&
  • On Client Ubuntu
PORT=3000

gst-launch udpsrc port=$PORT ! 'application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, profile-level-id=(string)640028, sprop-parameter-sets=(string)"J2QAKK2IDkOYIOEMKQpEByHMEHCGFIUiA5DmCDhDCkKQwEIYwhxmMhCGAhDGEOMxkIQwEIYwhxmMhCICEZjOI8KfEfiP4j8R8R4ziMREQoEIjEcR4j5PxH8n5PiPEcRkiLQCgC3I\,KO48sA\=\=", payload=(int)96, ssrc=(guint)1646914791, clock-base=(guint)4182448954, seqnum-base=(guint)19314' ! rtph264depay ! queue ! ffdec_h264 ! xvimagesink sync=false

This pipelines and others are documented at LeopardBoard DM365 Gstreamer Pipelines


Steps to follow if compiling RR's SDK

After following the DM365 Leopard 2011Q2 Getting Started Guide all the options needed for video streaming are available by default:

  • Gstreamer plug-ins
  • Ethernet support

Use the following pipelines at the Leopardboard and at the host with Ubuntu:

  • LeopardBoard
HOST_ADDR=<Client's IP address>
PORT=3000

gst-launch v4l2src always-copy=FALSE chain-ipipe=true ! video/x-raw-yuv,format=\(fourcc\)NV12, width=1280, height=720, framerate=\(fraction\)23/1 ! queue ! dmaienc_h264 encodingpreset=2 ratecontrol=2 intraframeinterval=23 idrinterval=46 targetbitrate=3000000\
 ! rtph264pay !udpsink port=$PORT host=$HOST_ADDR sync=false enable-last-buffer=false&
  • On Client Ubuntu
PORT=3000

gst-launch udpsrc port=$PORT ! 'application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, profile-level-id=(string)640028, sprop-parameter-sets=(string)"J2QAKK2IDkOYIOEMKQpEByHMEHCGFIUiA5DmCDhDCkKQwEIYwhxmMhCGAhDGEOMxkIQwEIYwhxmMhCICEZjOI8KfEfiP4j8R8R4ziMREQoEIjEcR4j5PxH8n5PiPEcRkiLQCgC3I\,KO48sA\=\=", payload=(int)96, ssrc=(guint)1646914791, clock-base=(guint)4182448954, seqnum-base=(guint)19314' ! rtph264depay ! queue ! ffdec_h264 ! xvimagesink sync=false

This pipelines and others are documented at LeopardBoard DM365 Gstreamer Pipelines