您的当前位置:首页正文

关于DM8168中HDVICP2是否支持FMO

来源:钮旅网

首先说明,DM8168不支持FMO。 依据: 1. TI官方用户手册H264_Encoder_HDVICP2_UserGuide.pdf (http://download.csdn.net/detail/gzengh/8288223) 文件中有几个地方都写到了FMO, 1.1. 第74页.Table 4-4. H.264 Encoder Error Statuses 里面有一个错误名为IH2

首先说明,DM8168不支持FMO。

依据:

1. TI官方用户手册 H264_Encoder_HDVICP2_UserGuide.pdf (http://download.csdn.net/detail/gzengh/8288223)

文件中有几个地方都写到了FMO,

1.1. 第74页. Table 4-4. H.264 Encoder Error Statuses 里面有一个错误名为IH264ENC_PROFILE_INCOMPLAINT_FMO_SETTING,描述为

Bit 2 - Profile in-complaint FMO setting. This error is applicable when FMO is enabled but IVIDENC2_Params::profile is not set as IH264_BASELINE_PROFILE.

就是编码档次和FMO设置不兼容,使能了FMO,却没有设置成Baseline基本档次。

这个错误标志侧面反映出,假如该编码器支持FMO,那也只是Baseline档次支持,(HDVICP2支持H264的Baseline、Main和High档次,不支持Extended扩展档次)。

1.2. 第173页. Table 4-13. Default and Supported Values for IH264ENC_FMOCodingParams.

fmoCodingPreset 参数的 Supported Value 是 IH264_FMOCODING_NONE。然后后面几个参数支持的值都是Ignore。

这里就等于明确的告诉我们目前版本不支持FMO。

1.3. 第158页. Frequently Asked Questions的 5.4 Algorithm Related中

Question:What are the profiles supported in this version of encoder?

Answer:This version of encoder supports baseline, main and high profiles.FMO feature is not supported for baseline profile.

在1.1中说明了DM8168只可能在Baseline档次支持FMO,现在这个问答里写了其Baseline也不支持FMO,所以再次证明DM8168不支持FMO。

2. OMX_TI_Index.h(http://download.csdn.net/detail/gzengh/8288377)文件声明了几乎所有相关的结构体。

 /* H264 Encoder Indices*/
 OMX_TI_IndexParamVideoDataSyncMode, //!< Refer to OMX_VIDEO_PARAM_DATASYNCMODETYPE structure 	
 OMX_TI_IndexParamVideoBitStreamFormatSelect,	//!< use OMX_VIDEO_PARAM_AVCBITSTREAMFORMATTYPE to specify the stream format type
 OMX_TI_IndexParamVideoNALUsettings,	//!< use OMX_VIDEO_PARAM_AVCNALUCONTROLTYPE to configure the type os NALU to send along with the Different Frame Types	
 OMX_TI_IndexParamVideoMEBlockSize,	//!< use OMX_VIDEO_PARAM_MEBLOCKSIZETYPE to specify the minimum block size used for motion estimation
 OMX_TI_IndexParamVideoIntraPredictionSettings,	//!< use OMX_VIDEO_PARAM_INTRAPREDTYPE to configure the intra prediction modes used for different block sizes
 OMX_TI_IndexParamVideoEncoderPreset,	//!< use OMX_VIDEO_PARAM_ENCODER_PRESETTYPE to select the encoding mode & rate control preset
 OMX_TI_IndexParamVideoFrameDataContentSettings,	//!< use OMX_VIDEO_PARAM_FRAMEDATACONTENTTYPE to configure the data content tpye
 OMX_TI_IndexParamVideoTransformBlockSize,	//!< use OMX_VIDEO_PARAM_TRANSFORM_BLOCKSIZETYPE to specify the block size used for ttransformation	
 OMX_TI_IndexParamVideoVUIsettings, //!use OMX_VIDEO_PARAM_VUIINFOTYPE
 OMX_TI_IndexParamVideoAdvancedFMO,
 OMX_TI_IndexConfigVideoPixelInfo,	//!< Use OMX_VIDEO_CONFIG_PIXELINFOTYPE structure to know the pixel aspectratio & pixel range
 OMX_TI_IndexConfigVideoMESearchRange,	//!< use OMX_VIDEO_CONFIG_MESEARCHRANGETYPE to specify the ME Search settings
 OMX_TI_IndexConfigVideoQPSettings,	//!< use OMX_TI_VIDEO_CONFIG_QPSETTINGS to specify the ME Search settings
 OMX_TI_IndexConfigSliceSettings,	//!
唯独OMX_TI_IndexParamVideoAdvancedFMO,后面没有 //!< use xxx.

3. 我自己通过改写OMX中Encode例程,试图使用FMO,尝试多种方法,都没有成功。

当时也是看到SDK代码里已经具备了各种FMO相关代码及参数,所以才抱着侥幸心理尝试,应该还是HDVICP2硬核编码目前不支持。

——————————————————————————————

其实我前些天写得一篇文章里面有张图,就是各种开源H264软件程序支持特性,文章链接:http://blog.csdn.net/gzengh/article/details/40512021
只有Vsofts支持FMO。图里没写JM8.6,JM8.6作为最完善的H264技术测试软件,是支持FMO的。

本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。

热门图文

Top