/OpenCV-rtsp-server

RTSP streaming using GStreamer

Primary LanguagePython

RTSP streaming using GStreamer

Python implementation to stream camera feed from OpenCV videoCapture via RTSP server using GStreamer 1.0.

Installation

This implementation has been developed and tested on Ubuntu 16.04 and 18.04. So the installation steps are specific to debian based linux distros.

Step-1 Install GStreamer-1.0 and related plugins

sudo apt-get install libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

Step-2 Install RTSP server

sudo apt-get install libglib2.0-dev libgstrtspserver-1.0-dev gstreamer1.0-rtsp

Requirement

  • Python 3.x
  • Opencv 3.x or above ( pip install opencv-python )

Usage

Run stream.py with required arguments to start the rtsp server

Sample
python stream.py --device_id 0 --fps 30 --image_width 640 --image_height 480 --port 8554 --stream_uri /video_stream

Visualization

You can view the video feed on rtsp://server-ip-address:8554/stream_uri

e.g: rtsp://192.168.1.12:8554/video_stream

You can either use any video player which supports rtsp streaming like VLC player or you can use the open-rtsp.py script to view the video feed.