i.MX8MM gstreamer vpu plugins can not set nUserQpMinEnable and userQpMaxEnable

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX8MM gstreamer vpu plugins can not set nUserQpMinEnable and userQpMaxEnable

422 Views
pyh0603
Contributor III

Hi everyone,

         I try to config the vpu to get constant bitrate with high vedio quality.

       my vpuenc lib version as follow:

====== VPUENC: 4.4.5 build on Oct 30 2019 12:04:50. ======

        wrapper: 3.0.0 (VPUWRAPPER_ARM64_LINUX Build on Oct 30 2019 11:31:36)

        vpulib: 1.1.1

        firmware: 1.1.1.65535

 

         According to the follow ticket prompt, I need to set nUserQpMinEnable and userQpMaxEnable 

         https://community.nxp.com/t5/i-MX-Processors/What-s-the-right-configuration-of-iMX53-vpu-that-can-ge...

         I have queried the code of GStreamer vpuenc, which uses a structure vpuencopenparamsimp, the structure has no members of nUserQpMinEnable or  userQpMaxEnable.  GStreamer vpuenc plugins use api VPU_EncOpenSimp instead of VPU_EncOpen.

         https://source.codeaurora.org/external/imx/gst1.0-plugins-fsl/tree/plugins/vpu/gstvpuenc.c?h=nxp/MM_...

         As the document i.MX VPU Application Programming Interface

Linux® Reference Manual says, VPU_EncOpen  Function to open new VPU handle, called by function VPU_EncOpenSimp.

         My question:

         1)VPU_ Encopen and Vpu_ Encopensimp, what is the other area of these two APIs? why use Vpu_ Encopensimp ,but not VPU_ Encopen?

          2)in gstvpuenc.h, can I use VpuEncOpenParam instead of VpuEncOpenParamSimp? By doing so, I can modify the members nUserQpMinEnable and userQpMaxEnable  in the structure.

https://source.codeaurora.org/external/imx/gst1.0-plugins-fsl/tree/plugins/vpu/gstvpuenc.h?h=nxp/MM_...

                gstreamer vpuenc plugins allows me to do so? Will this approach cause other problems?

Labels (1)
0 Kudos
1 Reply

370 Views
joanxie
NXP TechSupport
NXP TechSupport

for 5.4.70 bsp, you can find the vpu_wrapper.h define this, the path is:

"<build path>/tmp/work/aarch64-mx8m-poky-linux/imx-vpuwrap/4.5.7-r0/git/vpu_wrapper.h"

0 Kudos