GStreamer Based Image Signal Processor - Getting Started - Building GStreamer Image Signal Processor

From RidgeRun Developer Wiki



Previous: Getting Started/Getting the code Index Next: Examples





This page provides a guide to installing GStreamer Based Image Signal Processor.

Building GstISP

GstISP can be built and installed GstISP through Yocto for IMX8 and also for x86 host computer. In this section, this method is going to be explained and detailed in order to add GstISP to your system.

Dependencies

For building GstISP using Yocto, make sure you have installed the following packages on your target platform:

gstreamer1.0 
gstreamer1.0-plugins-base 
gstreamer1.0-plugins-bad 
gstreamer1.0-plugins-imx 
imx-gpu-viv 
OpenCL 1.2

Build using Yocto

RidgeRun offers a Yocto layer containing RidgeRun commonly used packages. You can download this package from Meta-Ridgerun Repository.

It contains a recipe to build GstISP but you need also to purchase GstISP with full source code, from Purchase.

Build steps

Adding meta-ridgerun to your Yocto build

First you need to copy meta-ridgerun in your Yocto sources directory, where $YOCTO_DIRECTORY is the location of your Yocto project:

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 GstISP

Once you have access to the repository, open gst-isp_xxx.bb in $YOCTO_DIRECTORY/sources/meta-ridgerun/recipes-multimedia/gstreamer/. Make sure to edit gst-isp_xxx.bb accordingly to your plug-in version given by the purchase.

Then, modify the following line in SRC_URI with the correct GstISP URL by fitting ${CUSTOMER_DIRECTORY} with your own.

git://git@gitlab.com/RidgeRun/orders/${CUSTOMER_DIRECTORY}/gst-isp;protocol=ssh;branch=${SRCBRANCH};name=base \

Besides, make sure you have added your ssh key to your GitLab account. The recipe will fetch the repository using your SSH key; thus it is necessary to add the key to the Gitlab page.

For adding the SSH key go to Settings -> SSH Keys and attach your key. If you do not have any SSH key yet, you can generate and get it using:

ssh-keygen -t rsa -C "your_email@example.com"
cat ~/.ssh/id_rsa.pub

Finally, build the recipe:

bitbake gst-isp

SHH Issue

If your list of known hosts on the PC does not have the GitLab key, you will have fetch errors when trying to build GstISP recipe.

One easy way to add the key is when cloning the repository for the first time from Gitlab, it will ask if you want to add the key to your list of known hosts.

Example:

git clone git@gitlab.com:RidgeRun/orders/${CUSTOMER_DIRECTORY}/gst-isp.git

x86-based and Qualcomm RBx

Build plugin

In Ubuntu-based systems, you may install the dependencies with the following command:

sudo apt-get install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev

Install plugin

This configuration has been tested on Ubuntu 16.04, Ubuntu 18.04 and Ubuntu 20.04.

./autogen.sh --prefix /usr/ --libdir /usr/lib/$(uname -m)-linux-gnu/
make
sudo make install

Verify

The plugin installation can be verified by running:

gst-inspect-1.0 isp


Previous: Getting Started/Getting the code Index Next: Examples