1919984_zh-CN

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

1919984_zh-CN

1919984_zh-CN

[iMX8MP] 如何调试 VPU_EncEncodeFrame() = 2:INVALID_PARAM

我正在尝试按照手册中的说明通过 VPU 包装器进行编码,但是 VPU_EncEncodeFrame() 返回 2:INVALID_PARAM,而控制台上没有显示任何其他错误日志。

1. 谁能告诉我如何调试以知道哪个参数导致了这个错误?
2. VPU_EncEncodeFrame() 的参数是这里唯一有问题的参数吗?所以我不需要检查传递给之前调用的 API 的参数,例如 VPU_EncOpenSimp()?
3.检查vpu_wrapper.c,我看到一些日志是通过 VPU_LOG() 或 VPU_ENC_LOG() 输出的,可以从应用程序端启用此功能吗?如果启用它,日志就会直接发送到控制台,这种假设正确吗?
4.有没有通过 VPU 包装器实现编码的示例代码,特别是针对 imx8mp?

如有任何回复,我们将不胜感激!

回复:[iMX8MP] 如何调试 VPU_EncEncodeFrame() = 2:INVALID_PARAM

你好,joanxie,谢谢你的跟进。

事实证明,问题在于由 VPU_EncOpenSimp() 创建的第一个参数 VpuEncHandle 没有正确传递给 VPU_EncEncodeFrame()。

我们过于关注错误代码的术语“PARAM”,认为它与 VpuEncOpen Param Simp 有关,并假设将针对 VpuEncHandle 设置单独的错误代码(3:INVALID_HANDLE)。

回复:[iMX8MP] 如何调试 VPU_EncEncodeFrame() = 2:INVALID_PARAM

抱歉,我错过了这次更新,我认为你需要添加一些额外的插件来支持 jpeg 到 yuv,你可以先尝试这个命令来显示 jpeg,我们之前测试过这个

gst-启动-1.0-v filesrc 位置=.jpeg!jpegdec !图像冻结!视频转换!自动视频接收器

回复:[iMX8MP] 如何调试 VPU_EncEncodeFrame() = 2:INVALID_PARAM

你好,谢谢你的回复!

>你的用例是什么?
我正在尝试制作一个可以在 imx8mp evk 上运行的应用程序,它将单个图像文件(被认为是 YUV420 格式)编码为 H264 格式。
基本上,我只是想先看看编码是如何工作的,因为我对此没有任何背景知识。

该输入图像文件通过以下命令创建:
gst-启动-1.0filesrc 位置="raw.jpg"!jpegdec !文件接收器位置="image_file.yuv"

原始.jpg:在 Paint 上创建的 JPEG 文件(1920x1080)
图像文件.yuv:我的应用程序的输入文件我相信/希望是 YUV420 格式

>你下载了 nxp yocto bsp 吗?
是的,我正在使用 yocto-real-time-edge bsp。

>您指的是什么源代码?
没有,我只是参考 VPU 参考手册,这就是为什么我在原始帖子中包含了同样的问题。

根据手册,传递给 VPU_EncOpenSimp 和 VPU_EncEncodeFrame 的参数大多设置为自动值(0 或 -1)。

其他参数基于输入图像文件,例如大小。

回复:[iMX8MP] 如何调试 VPU_EncEncodeFrame() = 2:INVALID_PARAM

你的用例是什么?你下载了NXP Yocto BSP吗?你指的是什么源代码?

Tags (1)
No ratings
Version history
Last update:
‎11-21-2025 12:51 PM
Updated by: