GstWebRTC - Building GstWebRTC: Difference between revisions
mNo edit summary |
No edit summary |
||
Line 167: | Line 167: | ||
gst-inspect-1.0 webrtc | gst-inspect-1.0 webrtc | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==Building Gst-WebRTC on Yocto== | |||
RidgeRun offers a Yocto layer containing RidgeRun commonly used packages. You can download this package from https://github.com/RidgeRun/meta-ridgerun.<br> | |||
It contains a recipe to build Gst-WebRTC but you need to purchase GstWebRTC with full source code, from: https://www.ridgerun.com/store/GSTWebRTC-p74337777 | |||
===Adding meta-ridgerun to your Yocto build=== | |||
First you need to copy meta-ridgerun in your '''sources''' directory: | |||
<syntaxhighlight lang='bash'> | |||
cp -r meta-ridgerun $YOCTO_DIRECTORY/sources/ | |||
</syntaxhighlight> | |||
Then add the RidgeRun meta layer to your '''bblayers.conf''' file. First go to the build configuration directory | |||
<syntaxhighlight lang='bash'> | |||
cd $YOCTO_DIRECTORY/build/conf/ | |||
</syntaxhighlight> | |||
Open the *bblayers.conf* file and add the RidgeRun meta layer path '''$YOCTO_DIRECTORY/sources/meta-ridgerun''' to '''BBLAYERS''' | |||
===Building Gst-WebRTC=== | |||
*Once you have access to the repository, please open gst-webrtc_1.8.1.bb in '''$YOCTO_DIRECTORY/sources/meta-ridgerun/recipes-multimedia/gstreamer/''' | |||
*Modify SRC_URI with the correct gst-webrtc URL by changing <Customer-Directory> with your own. | |||
*Make sure you have added your ssh key to your GitLab account and your the GitLab key is added to your list of known hosts on the PC. | |||
*Finally build recipe | |||
<syntaxhighlight lang='bash'> | |||
bitbake gst-webrtc | |||
</syntaxhighlight> | |||
}} | }} | ||
[[Category:GStreamer]][[Category:WebRTC]][[Category:GstWebRTC]] | [[Category:GStreamer]][[Category:WebRTC]][[Category:GstWebRTC]] |
Revision as of 16:28, 7 March 2018
← |
⌂ Home |
→ |
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:
sudo apt install \ 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
Data channel support dependencies
In order to have support for WebRTC data channel you need to build these libraries from the scratch:
- SCTP libraries
git clone https://github.com/sctplab/usrsctp cd usrsctp ./bootstrap ./configure <platform configuration option, see Table 1> make sudo make install cd ..
- GStreamer SCTP elements
git clone https://github.com/EricssonResearch/openwebrtc-gst-plugins cd openwebrtc-gst-plugins ./autogen.sh ./configure <platform configuration option, see Table 1> make sudo make install cd ..
Install RidgeRun GstWebRTC plugin
Please refer Getting the code page and RidgeRun will provide you the full source version of the plugin path once you place the order.
Checkout the latest tag and run the commands mentioned below:
./autogen.sh <platform configuration option, see Table 1> 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 TX1/TX2 | --prefix /usr/ --libdir /usr/lib/aarch64-linux-gnu/ |
Mac OSX
Export the PKG_CONFIG_PATH variable to /opt/local/
export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig
./autogen.sh --prefix /opt/local/ make sudo make install
Verify
The plugin installation can be verified by running:
gst-inspect-1.0 webrtc
Building Gst-WebRTC on Yocto
RidgeRun offers a Yocto layer containing RidgeRun commonly used packages. You can download this package from https://github.com/RidgeRun/meta-ridgerun.
It contains a recipe to build Gst-WebRTC but you need to purchase GstWebRTC with full source code, from: https://www.ridgerun.com/store/GSTWebRTC-p74337777
Adding meta-ridgerun to your Yocto build
First you need to copy meta-ridgerun in your sources directory:
cp -r meta-ridgerun $YOCTO_DIRECTORY/sources/
Then add the RidgeRun meta layer to your bblayers.conf file. First go to the build configuration directory
cd $YOCTO_DIRECTORY/build/conf/
Open the *bblayers.conf* file and add the RidgeRun meta layer path $YOCTO_DIRECTORY/sources/meta-ridgerun to BBLAYERS
Building Gst-WebRTC
- Once you have access to the repository, please open gst-webrtc_1.8.1.bb in $YOCTO_DIRECTORY/sources/meta-ridgerun/recipes-multimedia/gstreamer/
- Modify SRC_URI with the correct gst-webrtc URL by changing <Customer-Directory> with your own.
- Make sure you have added your ssh key to your GitLab account and your the GitLab key is added to your list of known hosts on the PC.
- Finally build recipe
bitbake gst-webrtc
← |
⌂ Home |
→ |