GstWebRTC - Building GstWebRTC: Difference between revisions

From RidgeRun Developer Wiki
mNo edit summary
mNo edit summary
Line 96: Line 96:
From the scratch
From the scratch


Installation path:
<syntaxhighlight lang='bash'>
export GSTDIR =/opt/local/
</syntaxhighlight>
* SCTP libraries
<syntaxhighlight lang='bash'>
<syntaxhighlight lang='bash'>
export GSTDIR =/usr/lib/
git clone https://github.com/sctplab/usrsctp
git clone https://github.com/sctplab/usrsctp
cd usrsctp
cd usrsctp
Line 106: Line 111:
</syntaxhighlight>
</syntaxhighlight>


* GStreamer SCTP elements
<syntaxhighlight lang='bash'>
<syntaxhighlight lang='bash'>
git clone https://github.com/EricssonResearch/openwebrtc-gst-plugins
git clone https://github.com/EricssonResearch/openwebrtc-gst-plugins

Revision as of 22:17, 7 December 2017


Getting the code


Home

Examples



This page provides a guide to install GstWebRTC.

Dependencies

GstWebRTC has the following dependencies:

  • Gstreamer 1.0
  • GStreamer 1.0 Development Package
  • Gstreamer 1.0 Base Plug-ins Development Package
  • Gstreamer 1.0 Bad Plug-ins
  • Gstreamer 1.0 Good Plug-ins
  • LibSoup Development Package (libsoup2.4-dev)
  • JSON-GLib Development Package (libjson-glib-dev)
  • OpenSSL Development Package (libssl-dev)
  • LibNice Development Package (libnice-dev)
  • GTK-Doc Tools (Optional) (gtk-doc-tools)

Make sure you have the following GStreamer elements:

  • gst-inspect rtp-manager
  • gst-inspect dtls
  • gst-inspect nice
  • gst-inspect srtp

Linux

In Debian based systems, you may install them with the following command:

gstreamer1.0-x \
libgstreamer1.0-dev \
libgstreamer-plugins-base1.0-dev \
gstreamer1.0-plugins-bad \
libsoup2.4-dev \
libjson-glib-dev \
libnice-dev \
autoconf \
libtool \
gtk-doc-tools \
libglib2.0-dev \
gstreamer1.0-nice \
libssl-dev \
libreadline-dev \
gstreamer1.0-plugins-ugly \
libsrtp0-dev \


Other Dependencies

In Ubuntu 16.04 the following dependencies were also required:

sudo apt install \
faad \
libasound2-dev \
libfaad-dev \
libjack-jackd2-dev \
libmad0-dev \
libogg-dev \
liborc-0.4-dev \
libpulse-dev \
libtheora-dev \
libv4l-dev \
libv4l2rds0 \
libvorbis-dev \
libvpx-dev \
libx264-dev \
libxv-dev \
x11proto-video-dev

Mac OSX

Using MacPorts

sudo port install \
gstreamer1 \
gstreamer1-gst-plugins-base \
gstreamer1-gst-plugins-bad \
gstreamer1-gst-plugins-good \
gstreamer1-gst-plugins-ugly \
json-glib \
autoconf \
libtool \
gtk-doc \
glib2 \
libsoup \
openssl \
readline \
libnice \
libsrtp

From the scratch

Installation path:

export GSTDIR =/opt/local/
  • SCTP libraries
git clone https://github.com/sctplab/usrsctp
cd usrsctp
./bootstrap 
./configure --prefix $GSTDIR 
make 
make install
  • GStreamer SCTP elements
git clone https://github.com/EricssonResearch/openwebrtc-gst-plugins
cd openwebrtc-gst-plugins
./configure --prefix $GSTDIR CFLAGS=-I$GSTDIR/include LDFLAGS=-L$GSTDIR/lib/ 
make
make install
cd ..

Install plugin

./autogen.sh <platform configuration option, see Table 1>
./configure
make
sudo make install

System Configure Option
Ubuntu 64 bits --prefix /usr/ --libdir /usr/lib/x86_64-linux-gnu/
RidgeRun's Embedded FS --prefix /usr/
Tegra TX2 --prefix /usr/ --libdir /usr/lib/aarch64-linux-gnu/
Table 1. Platform configuration options

Mac OSX

Export the PKG_CONFIG_PATH variable to /opt/local/

export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig
./autogen.sh --prefix /opt/local/
./configure
make
sudo make install

Verify

The plugin installation can be verified by running:

gst-inspect-1.0 webrtc


Getting the code


Home

Examples