OMX_IndexParamVideoAvc
我对OMX
视频解码器的重要性有疑问。具体来说,我的查询是:是否应该OMX Video Decoder
支持索引OMX_IndexParamVideoAvc
作为功能get
的一部分set
?
背景:
根据我的理解,从一个角度来看,这个索引更有用video encoder
,因为它被用来OMXIL Client
查询现有支持的底层组件,并根据客户的需要进一步配置编码器。
从规范的角度来看,我观察到规范确实表明了对视频解码器的 index OMX_IndexParamVideoAvc
on的支持,如规范的第 359 页所示。在本节中,只有和被填充。VPB+0
profile
level
可能我觉得这个索引可以用来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 实现中,如此处的解码器代码所示。
任何指针/评论/建议都会非常有帮助。在此先感谢。