Skip to content
/ oneVPL Public
forked from intel/libvpl

oneAPI Video Processing Library (oneVPL) dispatcher, tools, and examples

License

Notifications You must be signed in to change notification settings

dwang26/oneVPL

 
 

Repository files navigation

Intel® Video Processing Library (Intel® VPL)

Intel® Video Processing Library (Intel® VPL) supports AI visual inference, media delivery, cloud gaming, and virtual desktop infrastructure use cases by providing access to hardware accelerated video decode, encode, and frame processing capabilities on Intel® GPUs.

See the specification for additional information.

This repository contains the following components:

  • Copies of the Intel® VPL API header files. The version of the API is listed in the mfxdefs.h file.

  • Intel® VPL Dispatcher

  • Examples demonstrating API usage

  • Command line tools To use Intel® VPL for video processing you need to install at least one implementation. Here is a list:

  • oneVPL-intel-gpu for use on Intel® Iris® Xe graphics and newer

  • Intel® Media SDK for use on legacy Intel® graphics

Architecture

graph TD;
    dispatcher["Intel® VPL Dispatcher"]-->oneVPL-intel-gpu;
    dispatcher-->msdk["Intel® MediaSDK"];
Loading

As shown in this diagram, the Intel® VPL Dispatcher forwards function calls from the application to use the selected runtime.

Dispatcher behavior when targeting Intel® GPUs

Runtime loaded by Intel® VPL Dispatcher and their Microsoft* DirectX* support:

GPU Media SDK Intel® VPL Microsoft* DirectX* Support
Earlier platforms, back to BDW (Broadwell) ✔️ DX9/DX11
ICL (Ice Lake) ✔️ DX9/DX11
JSL (Jasper Lake) ✔️ DX9/DX11
EHL (Elkhart Lake) ✔️ DX9/DX11
SG1 ✔️ DX9/DX11
TGL (Tiger Lake) ✔️ ✔️ DX9/DX11*
DG1 (Intel® Iris® Xe MAX graphics) ✔️ ✔️ DX11*
RKL (Rocket Lake) ✔️ DX11
ADL-S (Alder Lake S) ✔️ DX11
ADL-P (Alder Lake P) ✔️ DX11
DG2 (Intel® Arc™ A-Series Graphics) ✔️ DX11
ATSM (Intel® Data Center GPU Flex Series) ✔️ DX11
Future platforms... ✔️ DX11

For TGL and DG1, if both Intel® VPL and Intel® Media SDK runtime are installed then the Intel® VPL Dispatcher will prefer Intel® VPL runtime unless the application requests D3D9 by setting the filter property "mfxImplDescription.AccelerationMode" to MFX_ACCEL_MODE_VIA_D3D9.

Installation and Usage

Installation options

Intel® VPL may be installed:

How to Contribute

See CONTRIBUTING.md for more information.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Security

See the Intel® Security Center for information on how to report a potential security issue or vulnerability.

About

oneAPI Video Processing Library (oneVPL) dispatcher, tools, and examples

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 86.2%
  • C 8.3%
  • Python 3.6%
  • CMake 1.4%
  • Starlark 0.3%
  • Batchfile 0.1%
  • Other 0.1%