OMX_IndexParamVideoAvc我对OMX视频解码器的重要性有疑问。具体来说,我的查询是:是否应该OMX Video Decoder支持索引OMX_IndexParamVideoAvc作为功能get的一部分set?
背景:
根据我的理解,从一个角度来看,这个索引更有用video encoder,因为它被用来OMXIL Client查询现有支持的底层组件,并根据客户的需要进一步配置编码器。
从规范的角度来看,我观察到规范确实表明了对视频解码器的 index OMX_IndexParamVideoAvcon的支持,如规范的第 359 页所示。在本节中,只有和被填充。VPB+0profilelevel
可能我觉得这个索引可以用来OMX_GetParameter检索最大值。组件支持的配置文件和级别。但是,也可以从中检索相同的内容OMX_IndexParamVideoProfileLevelQuerySupported。
因此,我的主要疑问是:
应该
OMX video decoder支持指数OMX_IndexParamVideoAvc吗?如果支持此索引,那么当
OMXIL客户端查询相同时,默认值应该是什么,比如LOADED状态?只有在组件处于
EXECUTING状态并且第一个缓冲区OMX_BUFFERFLAG_CODECONFIG已被解码后,才能在逻辑上填充此索引的点。在达到此状态之前,解码器是否应仅填充最大值。profile和level字段并将其他字段设置为零?是否存在从 查询此索引的实际场景
OMX video decoder?快速搜索显示对该索引的android主要支持来自encoders. 即使在AOSP源代码中,实现对这个索引的支持Exynos也是 forprofile和level. 因此,我并不特别相信该指数的预期用途OMX video decoders。
常见实现:
当我试图搜索常见的实现时,我发现了一些有趣的数据。TI 和 Broadcomm 编码器支持此索引(在某些情况下部分支持),如OMX_VENC和所示omx.broadcomm.video_encode。然而,对解码器的类似搜索表明在解码器OMX_VDEC中omx.broadcommn.video_decode没有明显支持该索引。这种理解的唯一例外是在三星的 aries 实现中,如此处的解码器代码所示。
任何指针/评论/建议都会非常有帮助。在此先感谢。