6

I am trying to make a rtsp server that can catch a rtsp feed from a onvif camera and then redistribute this stream to everyone that connects to my server.

I created a new Ubuntu 64-bit vm on VMware Workstation using this iso: https://www.ubuntu.com/download/desktop/thank-you?version=18.04.1&architecture=amd64

I then installed ubuntu-desktop:

$ sudo apt-get update
$ sudo apt-get install ubuntu-desktop
$ reboot

I cloned the gst-rtsp-server from its github repository to a folder on my desktop:

$ cd Desktop
$ mkdir camSrv
$ cd camSrv
$ git clone https://github.com/GStreamer/gst-rtsp-server.git

I then installed the dependency referenced by this post:

$ sudo apt-get install autoconf -y
$ sudo apt-get install automake -y
$ sudo apt-get install autopoint -y
$ sudo apt-get install libtool -y

but when i try to build the gst-rtsp-server project, I keep getting errors...

I installed a bunch of other dependencies, but now I'm stuck at the error:

configure: No package 'gstreamer-1.0' found
configure: error: no gstreamer-1.0 >= 1.15.0.1 (GSTreamer) found

I can't find what i'm missing... all i want is to make the example mentioned in this post work for me...

LoukMouk
  • 255
  • 1
  • 6
  • 16

1 Answers1

8

It seems that we do not need to compile anything by ourselves.
We can simply install required development packages from gst-rtsp-server1.0 source package :

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

and then you can use it as planned.

Below is manual compilation method if you are sure that you want to do.


Install development tools:

sudo apt-get install git build-essential autoconf automake autopoint libtool pkg-config -y
sudo apt-get install gtk-doc-tools libglib2.0-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev -y
sudo apt-get install checkinstall

(note libgstreamer1.0-dev above).

Clone the repository:

git clone https://github.com/GStreamer/gst-rtsp-server.git
cd gst-rtsp-server/

But Ubuntu 18.04 LTS has old version of GStreamer library (1.14.0) so we need to checkout previous version and then compile:

git checkout 1.13.91
./autogen.sh
./configure
make
sudo checkinstall make install # enter 3 and fill *Version* field with 1.13.91

Note: you can use sudo make install in the last stage, but checkinstall is safer as it will create deb-package with compiled application (so it is controlled by APT and may be removed with sudo dpkg -r gst-rtsp).

N0rbert
  • 97,162
  • 34
  • 239
  • 423
  • Is it me or the first method installs the libs and includes under the `/usr/include` and `/usr/lib` directories and the second one installs stuff under the `/usr/local/include` and `/usr/local/lib` directories? (I'm kinda newb with linux...) – LoukMouk Nov 30 '18 at 16:21
  • 3
    The first method (`sudo apt-get install libgstrtspserver-1.0-dev gstreamer1.0-rtsp`) should install all files into `/usr` (not `/usr/local`). You can check with `dpkg -L libgstrtspserver-1.0-dev` and `dpkg -L gstreamer1.0-rtsp`. – N0rbert Nov 30 '18 at 20:16
  • 1
    Thanks for everything! If i could upvote your comment I would. – LoukMouk Nov 30 '18 at 20:20
  • if its ubuntu 22.04 how to build this? – slowmonk Jul 11 '23 at 15:04