Jump to content

Getting Started - Evaluating PVA ISP

From RidgeRun Developer Wiki

Follow us on: YouTube Twitter LinkedIn Email Share this page

Share This Page


Preferred Partner Logo 3 Partner Program Banner





This section provides a guide to obtaining, installing, and testing the RidgeRun PVA ISP evaluation version.

Step 1: Request the Evaluation Binaries

RidgeRun provides a fully-featured evaluation version of the plugin with a limited processing time, as shown in table 1:

Feature Professional Evaluation
PVA ISP Plugin Y Y
Unlimited Processing Time Y N (*)
Source Code Y N
Table 1. Features provided in the evaluation version

(*) With the evaluation version, you will have access to all the features for a limited period of time.

In order to request an evaluation binary for a specific architecture, please Contact Us by providing the following information:

  1. Platform (i.e.: i.Jetson AGX Orin, etc...)
  2. L4T Version (i.e.: 36.4.4)
  3. GStreamer version and kernel version, you can provide the output of the following commands:
gst-launch-1.0 --gst-version
uname -a


Step 2: Install the dependencies

The following packages are required on the Jetson target for both evaluation and deployment:

Package Purpose
nvidia-l4t-pva PVA support package matching the installed JetPack/L4T version
pva-sdk-2.9-l4t PVA SDK 2.9 runtime
pva-allow-2 version 2.0.5 Enables PVA ISP execution on the PVA
yaml-cpp Required for sample examples
cuda The CUDA version of the system.
rrv4l2src The plugin for MIPI cameras with a patch for Bayer.

Install CUDA

CUDA is required when using the GStreamer integration.

Install CUDA from the JetPack repositories:

sudo apt update
sudo apt install nvidia-cuda
sudo apt install nvidia-cuda-dev

Alternatively, CUDA can be installed through NVIDIA SDK Manager by selecting the CUDA components for the corresponding JetPack version.

Verify the version as follows.

nvcc --version
Note
This dependency is only required when using the GStreamer element.

Install PVA Dependencies

The PVA ISP requires the NVIDIA PVA driver, cuPVA runtime, and authorization utilities.

Install the PVA driver and authorization package:

sudo apt update
sudo apt install nvidia-l4t-pva
sudo apt install pva-allow-2=2.0.5
sudo apt install libyaml-cpp-dev

For JetPack 6, download the PVA SDK 2.9 runtime package manually from:

https://repo.download.nvidia.com/jetson/

wget https://repo.download.nvidia.com/jetson/common/pool/main/p/pva-sdk-2.9-l4t/pva-sdk-2.9-l4t_2.9.4_arm64.deb
sudo apt install ./pva-sdk-2.9-l4t_<version>_arm64.deb

Verify the installed packages:

dpkg-query -W -f='${Package}\t${Version}\n' \
    nvidia-l4t-core \
    nvidia-l4t-pva \
    pva-sdk-2.9-l4t \
    pva-allow-2 \
    libyaml-cpp0.7

The nvidia-l4t-pva version must match the installed JetPack/L4T release.

Compiler tools, development packages, ASIP Programmer, and NVVPU are not required for evaluation.

Allow PVA Execution

For evaluation purposes, disable PVA VPU application authentication:


sudo nvidia-pva-allow disable

This is intended for evaluation and debugging only. Production deployments should use an application-specific PVA allowlist instead.

Note
On some configurations, disabling authentication through nvidia-pva-allow may not be sufficient.


Build rrv4l2src

We have a port of the Video For Linux 2 (v4l2) GStreamer plug-ins, supporting GStreamer 1.14 through 1.24 and 10-bit or 8-bit Bayer for MIPI cameras. You can evaluate a non-production version of the video source using a patched version available in this repo.

Note
This element is a reference implementation. Please adapt it to your GStreamer version based on the changes from this repo before deploying to production.

Please consider the following instructions:

1. Clone the repo:

git clone https://gitlab.ridgerun.com/open/gstreamer/gst-v4l2src.git -b bpp-10
cd gst-v4l2src

2. Configure the build

# Create the folder
mkdir -p ${HOME}/custom-gst-v4l2src

# Configure the path in build, compile and install
meson builddir --prefix=${HOME}/custom-gst-v4l2src --libdir=${HOME}/custom-gst-v4l2src/lib
ninja -C builddir install

3. Export the environment variables

export LD_LIBRARY_PATH=${HOME}/custom-gst-v4l2src/lib:${LD_LIBRARY_PATH}
export GST_PLUGIN_PATH=${HOME}/custom-gst-v4l2src/lib/gstreamer-1.0:${GST_PLUGIN_PATH}

These exports can be used in the .bashrc to automate them.

4. Test the installation

gst-inspect-1.0 rrv4l2src

It shall show a valid inspect.

Note
This dependency is only required when using the GStreamer element.



Cookies help us deliver our services. By using our services, you agree to our use of cookies.