1

我正在尝试使用 nanoPi 2 防火板计算机对原始帧进行编码。我为它创建了 api: https ://github.com/friendlyarm/nexell_linux_platform

根据 nx_video_api.h 我需要打开设备,初始化它,为输入和输出帧分配内存,然后使用“NX_VidEncJpegRunFrame”推送编码。

然而这就是问题所在,谁能帮我为这个结构“NX_VID_ENC_IN”分配内存?如何在那里放置原始框架?它应该是什么像素格式?如何从“NX_VID_ENC_OUT”读回数据?

我在该芯片上找不到任何用于硬件编码的示例或教程,因此任何示例都会非常有用。

4

1 回答 1

0

来自问题 theser 中的 Github 项目的示例展示了如何使用 NX_VidEncJpegRunFrame (在NXJpegHWEnc.cpp中)。

您可以在堆栈上分配结构 NX_VID_ENC_OUT,输出缓冲区将由 NX_VidEncJpegRunFrame 分配:

NX_VID_ENC_OUT encOut;
NX_VidEncJpegRunFrame(hEnc, &memInfo, &encOut);

接下来您可以访问encOut.outBuf.encOut.bufSize

于 2017-07-08T09:59:02.603 回答