|
|
(37 intermediate revisions by 6 users not shown) |
Line 1: |
Line 1: |
− | {{GstWebRTC Page| | + | {{GstWebRTC/Head|previous=Getting the code|next=Building GstWebRTC - x86|metakeywords=building WebRTC, building GstRrWebRTC, WebRTC dependencies, GstRrWebRTC dependencies, GstRrWebRTC Yocto Build,signaling}} |
− | [[GstWebRTC - Getting the code|Getting the code]]|
| |
− | [[GstWebRTC - Examples |Examples]]|
| |
| | | |
− | This page provides a guide to install GstWebRTC. | + | This Section presents the instructions to install the GstRrWebRTC element on x86, Jetson and Yocto platforms; |
− | | |
− | ==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:
| |
− | | |
− | <syntaxhighlight lang='bash'>
| |
− | 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 \
| |
− | </syntaxhighlight>
| |
− | | |
− | | |
− | ====Other Dependencies====
| |
− | In Ubuntu 16.04 the following dependencies were also required:
| |
− | <syntaxhighlight lang='bash'>
| |
− | 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
| |
− | </syntaxhighlight>
| |
− | | |
− | === Mac OSX ===
| |
− | | |
− | Using MacPorts
| |
− | | |
− | <syntaxhighlight lang='bash'>
| |
− | 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
| |
− | </syntaxhighlight>
| |
− | | |
− | From the scratch
| |
− | | |
− | Installation path:
| |
− | <syntaxhighlight lang='bash'>
| |
− | export GSTDIR=/opt/local/
| |
− | </syntaxhighlight>
| |
− | | |
− | Package path:
| |
− | <syntaxhighlight lang='bash'>
| |
− | export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig
| |
− | </syntaxhighlight>
| |
− | | |
− | * SCTP libraries
| |
− | <syntaxhighlight lang='bash'>
| |
− | git clone https://github.com/sctplab/usrsctp
| |
− | cd usrsctp
| |
− | ./bootstrap
| |
− | ./autogen.sh --prefix $GSTDIR
| |
− | make
| |
− | sudo make install
| |
− | cd ..
| |
− | </syntaxhighlight>
| |
− | | |
− | * GStreamer SCTP elements
| |
− | <syntaxhighlight lang='bash'>
| |
− | git clone https://github.com/EricssonResearch/openwebrtc-gst-plugins
| |
− | cd openwebrtc-gst-plugins
| |
− | ./autogen.sh
| |
− | ./configure --prefix $GSTDIR CFLAGS=-I$GSTDIR/include LDFLAGS=-L$GSTDIR/lib/
| |
− | make
| |
− | sudo make install
| |
− | cd ..
| |
− | </syntaxhighlight>
| |
− | | |
− | ==Install plugin==
| |
− | <syntaxhighlight lang='bash'>
| |
− | ./autogen.sh <platform configuration option, see Table 1>
| |
− | ./configure
| |
− | make
| |
− | sudo make install
| |
− | </syntaxhighlight>
| |
| | | |
| + | == Building Instructions Index == |
| <html> | | <html> |
− | <center> | + | <div class="toc" style="font-size:80%;"> |
− | <table class='wikitable'>
| + | <ol> |
− | <tr> | + | <li> <a href=https://developer.ridgerun.com/wiki/index.php?title=Building_GstWebRTC_-_x86>Building x86 Platforms</a></li> |
− | <th>System</th> | + | <li> <a href=https://developer.ridgerun.com/wiki/index.php?title=Building_GstWebRTC_-_Jetson>Building Jetson Platforms: TX1, TX2 and Xavier </a></li> |
− | <th>Configure Option</th>
| + | <li> <a href=https://developer.ridgerun.com/wiki/index.php?title=Building_GstWebRTC_-_Yocto>Building Yocto Platforms: i.MX6 and i.MX8</a></li> |
− | </tr>
| + | </ol> |
− | <tr>
| + | </div> |
− | <td>Ubuntu 64 bits</td>
| |
− | <td>--prefix /usr/ --libdir /usr/lib/x86_64-linux-gnu/</td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td>RidgeRun's Embedded FS</td> | |
− | <td>--prefix /usr/</td>
| |
− | </tr>
| |
− | <tr>
| |
− | <td>Tegra TX2</td> | |
− | <td>--prefix /usr/ --libdir /usr/lib/aarch64-linux-gnu/</td>
| |
− | </tr>
| |
− | <caption>Table 1. Platform configuration options</caption>
| |
− | </table>
| |
− | </center> | |
| </html> | | </html> |
− | === Mac OSX ===
| |
− |
| |
− | Export the PKG_CONFIG_PATH variable to /opt/local/
| |
− |
| |
− | <syntaxhighlight lang='bash'>
| |
− | export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig
| |
− | </syntaxhighlight>
| |
− |
| |
− | <syntaxhighlight lang='bash'>
| |
− | ./autogen.sh --prefix /opt/local/
| |
− | ./configure
| |
− | make
| |
− | sudo make install
| |
− | </syntaxhighlight>
| |
− |
| |
− | ==Verify==
| |
− | The plugin installation can be verified by running:
| |
− | <syntaxhighlight lang='bash'>
| |
− | gst-inspect-1.0 webrtc
| |
− | </syntaxhighlight>
| |
− | }}
| |
| | | |
− | [[Category:GStreamer]][[Category:WebRTC]][[Category:GstWebRTC]]
| + | {{GstWebRTC/Foot|previous=Getting the code|next=Building GstWebRTC - x86}} |