编写 OpenMAX IL 组件,从哪里开始

Writing an OpenMAX IL component, where to start

本文关键字:开始 OpenMAX IL 组件 编写      更新时间:2023-10-16

我即将获取我的树莓派的视频输出,将其传递给有点阿达莱特环境闪电系统。XBMC的播放器用于PI,omxplayer,用户OpenMAX API用于解码和其他功能。

查看代码会得到以下结果:
m_omx_tunnel_sched.Initialize(&m_omx_sched, m_omx_sched.GetOutputPort(), &m_omx_render, m_omx_render.GetInputPort());

据我了解,这在视频调度器和渲染器[S]-->[R]之间设置了一个管道。

现在我的想法是编写一个抓取器组件并将其插入管道 [S]-->[G]->[R] 中。采集卡将从帧缓冲中提取像素,并将其传递给驱动 LED 的恶魔。

现在我即将深入研究OpenMAX API,这似乎很奇怪。我应该从哪里开始?这是一种可行的方法吗?

此致敬意

如果你想要解码的数据,那么不要发送到渲染器。与其渲染,不如获取数据并执行任何您想做的事情。解码的数据应取自 video_decode OpenMAX IL 组件的输出端口。我想您还需要设置正确的输出像素格式,因此将组件输出端口设置为所需的正确格式,以便由 GPU 完成转换(可以使用 YUV 或 RGB565)。

首先,我认为您应该将缓冲区附加到相机组件的输出,在 CPU 中对该帧执行您想要的所有操作,并通过附加到渲染输入端口的缓冲区发送帧,这不会是一项微不足道的任务,因为关于覆盆子的 OpenMax 的文档很少。

最佳起点:https://jan.newmarch.name/RPi/

手上的最佳场所:http://home.nouwen.name/RaspberryPi/documentation/ilcomponents/index.html

下一个最佳位置:在互联网上分发的源代码。

祝你好运。