VPU Sharing

Updated: April 19, 2023

The Shared Video and Camera framework allows guests to use the video processing unit (VPU) on the host system to decode video. The framework does so by providing a virtual video device that provides media codec and video control functionality to client guest applications and uses the host system's VPU to do the required codec operations.

Note:

VPU sharing lets you decode video from guest applications, but to have functional video processing (i.e., to render video on the host's display) in a hypervisor environment, you also need the Shared GPU and Display framework, which in turn needs the Screen Graphics Subsystem.

The video framework is considered experimental because the VirtIO specification that defines the virtual device interface or the guest OS components that use this interface might change. Thus, the guest or host components may require updates in future releases.

This chapter explains the framework's architecture, in which the hypervisor manages interaction between guest applications and the VPU, how to configure the virtual device in a VM to make it available to a guest, and how to add the necessary framework components to the guest and host.