视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
关于DM8168中HDVICP2是否支持FMO
2020-11-09 08:08:25 责编:小采
文档

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

首先说明,DM8168不支持FMO。

依据:

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

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

1.1. 第74页. Table 4-4. H.2 Encoder Error Statuses 里面有一个错误名为IH2ENC_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 IH2_BASELINE_PROFILE.

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

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

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

fmoCodingPreset 参数的 Supported Value 是 IH2_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)文件声明了几乎所有相关的结构体。

 /* H2 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硬核编码目前不支持。

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

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

下载本文
显示全文
专题