Explorer/RaspberryPi/Softwares/gstreamer

From PaparazziUAV
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Explorer

  • Install gstreamer
sudo apt-get install gstreamer1.0-plugins-base -y; \
sudo apt-get install gstreamer1.0-plugins-good -y; \
sudo apt-get install gstreamer1.0-plugins-bad -y; \
sudo apt-get install gstreamer1.0-plugins-ugly -y; \
sudo apt-get install gstreamer1.0-libav -y; \
sudo apt-get install gstreamer1.0-omx -y; \
sudo apt-get install gstreamer1.0-tools -y
  • Check installation with camera unicast
                      | --> camera1 (x-h264)                         --> port=5000
raspivid (x-h264) --> |   
                      | omxh264dec --> camera2 (x-raw,I420)          --> omxh264enc --> port=5100

Server:

rm /tmp/camera*; \
raspivid -t 0 -w 640 -h 480 -fps 30/1 -b 3000000 -g 5 -vf -hf -cd H264 -n -fl -ih -o - \
  | gst-launch-1.0 fdsrc \
  ! h264parse \
  ! video/x-h264,stream-format=byte-stream \
  ! tee name=streams \
  ! omxh264dec \
  ! queue max-size-buffers=0 max-size-time=0 max-size-bytes=0 \
  ! shmsink socket-path=/tmp/camera2 wait-for-connection=false sync=false streams. \
  ! queue max-size-buffers=0 max-size-time=0 max-size-bytes=0 \
  ! shmsink socket-path=/tmp/camera1 wait-for-connection=false sync=false
gst-launch-1.0 shmsrc socket-path=/tmp/camera1 do-timestamp=true \
  ! video/x-h264,stream-format=byte-stream,alignment=au \
  ! rtph264pay name=pay0 pt=96 config-interval=1 \
  ! udpsink host=CLIENTIP port=5000
gst-launch-1.0 shmsrc socket-path=/tmp/camera2 do-timestamp=true is-live=true \
 ! video/x-raw,format=I420,width=640,height=480,framerate=15/1 \
 ! omxh264enc \
 ! video/x-h264,profile=high \
 ! rtph264pay name=pay0 pt=96 config-interval=1 \
 ! udpsink host=CLIENTIP port=5100

Client: (port 5000 and 5100)

gst-launch-1.0 udpsrc port=5000  \
 ! application/x-rtp, encoding-name=H264,payload=96  \
 ! rtph264depay  \
 ! h264parse  \
 ! avdec_h264  \
 ! videoconvert \
 ! autovideosink