编辑: LinDa_学友 | 2016-02-02 |
00.09.00 版本为例)2014.3.19 DM81xx IVAHD MJPEGenc 的错误代码包括 extendedError、extendedErrorCode
0、 extendedErrorCode1. 1. 如何得到错误代码? 以IPNC RDK 为例,如果要支持 extendedError,更详细的 extendedErrorCode0/1 的 打印,需要用户添加下面的代码来实现. 下面是一个在配置动态参数后打印错误代码的例子,用户也可以在 process call 后 添加类似的代码来打印 process call 后出现的错误. if (!UTILS_ISERROR(retVal)) { algStatus = enclink_jpeg_control(hObj->
algHandle, XDM_SETPARAMS, &
hObj->
dynamicParams, &
hObj->
status);
//add by chris if (algStatus == XDM_EFAIL) { enclink_jpeg_control(hObj->
algHandle, XDM_GETSTATUS, &
hObj->
dynamicParams, &
hObj->
status);
Vps_printf( extendedError = 0x%x \n ,hObj- >
status.videnc2Status.extendedError );
Vps_printf( extendedErrorCode0 = 0x%x, extendedErrorCode1 = 0x%x \n ,hObj->
status.extendedErrorCode0, hObj->
status.extendedErrorCode1);
} UTILS_assertError((algStatus == XDM_EOK), retVal, ENC_LINK_E_ALGSETPARAMSFAILED, linkID, channelID);
} 2. 错误代码的具体含义: ? extendedError 总共 32-bit. o bit8~15 兼容是 XDM_ErrorBit.每一个 bit 代表一个错误.从user guide 的Table 4-1 List of Enumerated Data Types 可以得到对应的信息.注:符合XDAIS/XDM 的编解码算法都支持 XDM_ErrorBit. o bit 31~16, bit7~0 是IVAHD MJPEGenc 特有的错误代码,可以从 user guide 里的 Table 4-1 List of Enumerated Data Types 里了解具体错误信息. ? extendedErrorCode0/1/
2 o IVAHD MJPEGenc 还提供了额外
2 个32-bit 的错误信息,以提供更详细 的错误信息,具体信息在 Table 9-2 里面. 3. 示例 错误反馈打印如下: [m3video]12721:!ERROR!:ENCLINK::links_m3video/iva_enc/encLink_jpeg.c:[88]::INTERN AL ERROR:-1 [m3video] ALGCONTROL FAILED:CMD:1 [m3video] extendedError = 0x2 [m3video] extendedErrorCode0 = 0x10, extendedErrorCode1 = 0x0 上面的打印信息表示 extendedError 的bit1 为1,提示错误是不支持的编码动态参 数配置.extendedErrorCode0 的bit4 为1,提示错误是不支持的分辨率,具体解释: Frame height and Frame width passed to the codec is less than
32 or greater than Max Width and Max Height provided during create time.而导致错误的原因正是动态参数 inputWidth 的 值大于了静态参数 maxWidth 的值,和extendedErrorCode0 错误提示一致.增大 maxWidth 可解决该问题. 附录: 下面的信息摘自 MJPEG Encoder on HDVICP2 and Media and Media Controller Based Platform User'
s Guide Literature Number: SPRUH27 December
2012 Table 4-1 List of Enumerated Data Types extendedError bit 15~9 的出错信息解释. Group or Enumeration Class Symbolic Constant Name Description or Evaluation XDM_ErrorBit XDM_APPLIEDCONCEALMENT Bit
9 ?
1 - Applied concealment ?
0 - Ignore XDM_INSUFFICIENTDATA Bit
10 ?
1 - Insufficient data ?
0 - Ignore XDM_CORRUPTEDDATA Bit
11 ?
1 - Data problem/corruption ?
0 - Ignore XDM_CORRUPTEDHEADER Bit
12 ?
1 - Header problem/corruption
3 ?
0 - Ignore XDM_UNSUPPORTEDINPUT Bit
13 ?
1 - Unsupported feature/parameter in input ?
0 - Ignore XDM_UNSUPPORTEDPARAM Bit
14 ?
1 - Unsupported input parameter or configuration ?
0 - Ignore XDM_FATALERROR Bit
15 ?
1 - Fatal error (stop decoding) ?
0 - Recoverable error extendedError bit 31~16, bit7~0 的出错信息解释. Group or Enumeration Class Symbolic Constant Name Description or Evaluation IJPEGVENC_ExtendedErrorC odes IJPEGVENC_ERR_UNSU PPORTED_VIDENC2PAR AMS Bit