Tag: openmax

可变长度结构

OMX提供了具有以下定义的结构 /* Parameter specifying the content URI to use. */ typedef struct OMX_PARAM_CONTENTURITYPE { OMX_U32 nSize; /**< size of the structure in bytes */ OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ OMX_U8 contentURI[1]; /**< The URI name*/ }OMX_PARAM_CONTENTURITYPE; OMX_IndexParamContentURI, /**< The URI that identifies the target content. Data type is OMX_PARAM_CONTENTURITYPE. */ 我有一个常量的char数组来设置。 char* […]

在不使用OpenMAX的情况下解码Raspberry Pi中的video?

我正在寻找一个直接在Raspberry Pi上解码video的例子,而不使用OpenMAX。 这解释了多媒体软件的不同层次: 还有一个未在此处显示的附加层,“ MMAL ”层(我相信)是围绕OpenMAX的Broadcom包装器。 (如果不是,它将是一个OpenMAX备选方案,位于内核驱动程序之上)例如,使用MMAL编写raspivid和raspistill。 我想要一个video解码的例子,其中输入是原始H.264,输出是内存中的video或屏幕上的video。 我想直接使用VCHIQ ,而不是使用OpenMAX。 (主要是出于性能和灵活性的原因) 这个github存储库: https : //github.com/raspberrypi/userland/包含上面显示的所有内容的源(橙色和绿色框; VCHIQ本身的源代码,VCHIQ之上的OpenMAX IL实现,以及OpenGL和EGL实现,。 ..)。 所以在理论上它应该足以开始。 问题在于如何使用它是非常不明显的,即使一个人非常熟悉OpenMAX和一般的多媒体框架。 例如: vchiq_bulk_transmit ()似乎是用于将video发送到解码器的function。 但是如何初始化VCHIQ_SERVICE_HANDLE_T类型的第一个参数? 结果在哪里,在帧缓冲区中,或在结果句柄中,还是……? 编辑可以通过使用vchiq提供video解码的工作示例,显示调用序列的API演练(尽管不是一个工作示例)或指向足够的文档来编写它来收集赏金。 一个工作的例子将得到一个巨额额外的赏金:)