vdev virtio-video-decoder

Updated: April 19, 2023

Provide VPU decoder functionality to guests running in hypervisor VMs

Synopsis

vdev virtio-video-decoder
  [loc addr intr intr]
  [log_level level]

Options

loc addr
Set the base address of the registers. If this option isn't specified, the vdev appears as a PCI device.
intr intr
Specify the guest interrupt signal that is generated for device interrupts. This field is required only when the vdev does not appear as a PCI device; that is, when loc is specified. See Setting the guest interrupt below for more information.
log_level level
Set the level of logging. The logging is accumulative, meaning any messages at this level and more severe levels get logged. The least severe level is 10 and the most severe is 3.

Level 10 represents “Debug 6”, which is the most verbose debugging level, while 6 represents “Debug 1”, which is the least verbose debugging level. The default setting is 5, which means informational and more severe messages get logged. Levels 4 and 3 respectively cause warnings and errors to be logged. Currently, values below 3 don't generate any additional message logging, but are reserved for future usage.

Description

(ARM and x86) This vdev provides guests with access to VPU decoder functionality in the hypervisor host. In this release, video decoding (but not encoding) is supported, so guests can play video on the host's displays.

Setting the guest interrupt

If the host is an x86-based platform, or if a PCI server is set up in a guest, you can omit the loc and intr options. In this case, the vdev presents itself to the guest via the PCI bus, with the vendor ID/device ID pair 0x1C05/0x001F, where 0x1C05 is the BlackBerry vendor ID and 0x001F is the device ID for the decoder device. (You can use the VIRTIO_DT_VIDEO_DECODER constant to match the device ID.)

Otherwise, you need to specify these options in the VM configuration file (*.qvmconf) for the guest; the values you specify are passed to the video decoder driver in the guest. For more information, see “Common vdev options” in the “Virtual Device Reference” chapter in the QNX Hypervisor User's Guide.