Architecture#
oneVPL functions fall into the following categories:
- DECODE#
Functions that decode compressed video streams into raw video frames
- ENCODE#
Functions that encode raw video frames into compressed bitstreams
- VPP#
Functions that perform video processing on raw video frames
- DECODE_VPP#
Functions that perform combined operations of decoding and video processing
- CORE#
Auxiliary functions for synchronization
- Misc#
Global auxiliary functions
With the exception of the global auxiliary functions, oneVPL functions are named after their functioning domain and category. oneVPL exposes video domain functions.
Applications use oneVPL functions by linking with the oneVPL dispatcher library.
The dispatcher library identifies the hardware acceleration device on the running platform, determines the most suitable platform library for the identified hardware acceleration, and then redirects function calls accordingly.