Skip to content

Latest commit

 

History

History
55 lines (34 loc) · 2.63 KB

README.rst

File metadata and controls

55 lines (34 loc) · 2.63 KB

GStreamer based x86 applications

Overview

GStreamer has many plugins that support hardware acceleration for a large number of devices via several acceleration packages. The hardware acceleration can be used for decoding/encoding operations, color convert, scaling, compositing etc.

On x86 based devices, one of the main plugins for hardware acceleration is vaapi plugin, that uses the VA-API hw acceleration library.

For more information about VA-API and device compatibility: VAAPI (Video Acceleration API)

The applications under the x86_hw_accelerated directory are using the vaapi gstreamer plugin and dependent on it. In order to verify your device is compatible and supports the x86 hardware acceleration in gstreamer (AKA VA-API), please use the following guide.

Is my machine VA-API compatible?

In order to find out If your machine is compatible we will have to verify:

  1. You have an Intel CPU of 8th generation or higher.
  2. Your Intel CPU has integrated graphics inside.

To determine if your CPU has integrated graphics you can follow the following guide

To find out what is the generation of your Intel cpu and also whether it has integrated graphics:

  1. Type lscpu | grep "Model Name:" on your computer.
  2. Take the model name and search for it in the Intel Ark
  3. There you can find the generation of the CPU.
  4. If the page of the specific processor has a Processor Graphics section, it has integrated graphics.

Here is an example of a cpu specifications on Intel Ark:

image

Highlighted are the Processor Graphics section and the CPU's generation.

VA-API Installation Guide

  1. Run the VA-API accelerator's insallation via our script: ./install_accelerator.sh
  2. Update the environment sourcing the following script: "source $TAPPAS_WORKSPACE/scripts/vaapi/set_env.sh"
  3. Hailo provides a Sanity Pipeline that helps you verify that the installation phase went well. This is a good starting point.

Supported Pipelines

  1. Sanity Pipeline - Helps you verify that all the required components are installed correctly
  2. Multi-stream detection - Multi stream object detection using x86 hw acceleration.
  3. Century Pipeline - Detection Pipeline with multiple devices.