Intel® oneAPI Video Processing Library Release Notes

By Yan Liu,

Published:09/25/2019   Last Updated:04/12/2021

Version History

Date Version Major Change Summary
November 2020 2021.1.1 Initial Release
March 2021 2021.2.2 Q1 2021 Release

Where to Find the Release

For more information on how to acquire the package see the product page.

To explore and download the source code, see the open source oneVPL project on GitHub*.

Sample code can be found in release package or downloaded directly from the oneAPI-samples repo.

For information about the oneAPI Video Processing Library (oneVPL) specification, see the product specification.

For information about transitioning from Intel(R) Media SDK to oneVPL, see the transition guide.

New in This Release

  • Dispatcher and CPU implementation updated to align with oneVPL Specification 2.2​.
  • Legacy Intel(R) Media SDK test tools (with CPU and GPU support).
  • Intel(R) Media SDK to oneVPL migration guide.
  • pkg-config support.
  • Windows* 32-bit support.
  • Legacy mfxvideo++ header.
  • New name for dispatcher library.

Features

Per the oneAPI oneVPL specification, oneVPL is defined as source compatible with [Intel® Media SDK](https://software.intel.com/content/www/us/en/develop/tools/media-sdk.html). This open source release is the first reference implementation of the specification on CPU. It targets usability improvements while continuing to support the current Intel Media SDK on older hardware. It includes the following main features:

  • C API implementation of oneVPL API 2.2.
  • oneVPL Dispatcher.
  • Frame memory management with user interface and internally allocated buffers.
  • AVC/H.264, HEVC/H.265, MJPEG, and AV1 software decode and encode.
  • Video processing (resize, color conversion, and crop).
  • Sample code and pre-built tools.

Installation Notes

Implementation plugins are loaded at runtime. The path to the plugins is defined by the VPL_EXTENSIONS_PATH environment variable.

For more information about installation, please see:

Issues and Limitations

Dispatcher

  • MFXinit() and MFXInitEx() functions have been deprecated in the 2.0 oneVPL Specification. Use MFXLoad() instead. See the transition guide for more details.
  • If both Intel(R) Media SDK and oneVPL hardware libraries are installed, only oneVPL libraries will be loaded via MFXLoad(). See the oneVPL specification for more details.
  • When the dispatcher attempts to load the Intel(R) Media SDK hardware library through MFXLoad(), support is limited to a single GPU adapter and the 1.x API supported by the MediaSDK implementation.
  • The libmfx.dll and libmfx.so.2021.1.11 dispatchers are deprecated. They are provided for backwards compatibility only and will be removed from a future release. They do not include any changes since the 2021.1.1 release.
  • Dispatcher support has been extended to include hardware implementations, including those that implement API versions lower then 2.0. Applications patterned after the 2021.1.1 release samples, rather than the 2.0 specification may fail after re-build as the previous sample code made the assumption that 2.0 APIs would be available. To remedy this please follow the coding patterns in the oneVPL spec.

Tools

  • Encode B-frame distance setting is inconsistent between CPU and GPU implementations. For the CPU implementation 0 means no B-frames, while for the GPU implementation 1 means no B-frames.
  • Colorspace flags are required when using sample_* tools, if colorspace is not set tools will fail.
  • Input size should be aligned to 16 bytes for sample_encode.

CPU Implementation

  • Decode input bitstream buffer size must be large enough to hold several frames. Buffer sizes that are too small may cause issues. The necessary minimum size is stream dependent but enough for 10 frames is a conservative estimate.
  • AVC/H.264 encode is disabled due to licensing restrictions. To enable it, refer to the instructions to Optionally enable H.264 encode.
  • A subset of parameters and functions from the specification are implemented. For more information on mandatory and optional APIs and features, see the oneVPL specification.
  • For the Windows* release, Visual C++* Redistributable for Visual Studio* 2015 or higher is required. Without this, an error reporting a missing MSVCP140.dll will be generated.
  • MFX_BITSTREAM_EOS from the input bitstream dataFlag is ignored by MFXVideoDECODE_DecodeFrameAsync().

Notices and Disclaimers

Intel technologies may require enabled hardware, software or service activation.

No product or component can be absolutely secure.

Your costs and results may vary.

© Intel Corporation. Intel, the Intel logo, and other Intel marks are trademarks of Intel Corporation or its subsidiaries. Other names and brands may be claimed as the property of others.

No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document.

The products described may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request.

Intel disclaims all express and implied warranties, including without limitation, the implied warranties of merchantability, fitness for a particular purpose, and non-infringement, as well as any warranty arising from course of performance, course of dealing, or usage in trade.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.