使用nanopi2在linux下进行硬件编码

时间:2016-10-07 09:41:57

标签: c++ linux encoding hardware nanopi

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

正在编译nx_video_api.h我需要打开设备,启动它,为输入和输出帧分配内存,然后使用“NX_VidEncJpegRunFrame”推送编码。

然而这就是问题,任何人都可以帮我为这个结构“NX_VID_ENC_IN”分配内存吗? 如何把原始框架放在那里?它应该是什么像素格式? 如何从“NX_VID_ENC_OUT”读取数据?

我在该芯片上找不到任何关于hw编码的示例或教程,所以任何一个例子都会非常受欢迎。

1 个答案:

答案 0 :(得分:0)

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

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

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

接下来,您可以访问encOut.outBuf的缓冲区encOut.bufSize