iMX8 VPU Video Encoder

I’ve got a few questions regarding usage of the VPU for h.264 Video Encoding on the iMX8.

  1. What is the recommended way to use the VPU encoder in software, i.e. is there a Linux library that NXP recommends to use?
  2. Will there be a Gstreamer plugin that supports encoding with the VPU (like there currently is for iMX6?)

Here’s a link to all I could find on the subject: IMX.8 Support Question · Issue #192 · Freescale/gstreamer-imx · GitHub

Looking at the provided image on the iMX8 development board I didn’t see any libraries or drivers installed that currently provide access to the VPU.



There is no support for the VPU in the BSP for A0 silicon.

When and how NXP will add this we do not know. We expect this to be in the form of gstreamer plugins.


Hi Max,

Has there been any update on this? I notice that NXP have recently published some more material on the iMX8.

We are looking at an application that requires simultaneous encode of two 1080p30 streams. Do you know if the iMX8 QuadMax is capable of doing this?

Many thanks,


Hi Mark

Sorry, currently we have no update. There probably never will be any.
A0 silicon will not have a working VPU.

B0 silicon has not made it on our tables as of today. From the reference manual I expect that the VPU has two encoders with each capable of encoding two 1080p30 streams.


Thank you for the information Max.

Your welcome.
Note that I formulated it wrong, I expect each VPU to encode one 1080p30 stream, so two in total. Sorry about that.


Hello There!

Sorry to somehow hijack this thread - but I think this will also apply to decoding, am I right?
(We received the Early Access Package last week, and since then I try to get the “vpudec” element for gstreamer, but with no success).

Best Regards,

Yes, this certainly affects anything and everything involving the VPU.

Does the iMX8QM V1.0B have support for the VPU Video Encoder?

Hi, this question is answered here. Thanks.