CTS]android.media.cts.Adapti vePlaybackTest-- testVP9_earlyEos 常见 fail解决方法
时间:10-02
整理:3721RD
点击:
[DESCRIPTION]
CTS测试测项:android.media.cts.AdaptivePlaybackTest#testVP9_earlyEos failed
case1.code list当中media_codecs.xml当中匹配不到VP9。
case2.vp9_dec_getParameter在driver init之前导致报NE。
[SOLUTION]
针对case 1:
一般在code list会显示如下:
01-01 01:10:21.818 10842 10864 D mtkOmxCore: name(OMX.MTK.VIDEO.DECODER.RV), role(video_decoder.rv), path(liBMTkOmxVdec.so)
01-01 01:10:21.818 10842 10864 D MtkOmxCore: name(OMX.MTK.VIDEO.DECODER.VC1), role(video_decoder.vc1), path(libMtkOmxVdec.so)
01-01 01:10:21.818 10842 10864 D MtkOmxCore: name(OMX.MTK.VIDEO.DECODER.VPX), role(video_decoder.vpx), path(libMtkOmxVdec.so)
.........
可修改为:
\alps\mediatek\config\$Project\media_codecs.xml,添加如下这一行
<MediaCodec name="OMX.MTK.VIDEO.DECODER.VPX" type="video/x-vnd.on2.vp9" /
查看测试是否测试成功。若还没有成功可参照我司其他平台CTS测项过的修改即可。
针对case 2:
一般会有log显示backtrace如下:
backtrace:
#00 pc 0001efca /system/lib/libvcodecdrv.so (vp9_dec_getParameter+45)
#01 pc 0000a1b3 /system/lib/libvcodecdrv.so (eVDecDrvGetParam+262)
#02 pc 00008377 /system/lib/libMtkOmxVdec.so (MtkOmxVdec::GetConfig(void*, OMX_INDEXTYPE, void*)+82)
一般这种情况都是在上层呼叫flow有改动之后,在还沒有init driver之前就去get parameter。由于get parameter时需要driver handle, 而driver handle是在init時allocate的。所以此时会发出空指针错误。
其修改就是为了flow修改之后导致init driver没有进行完成而直接去get parameter.加保护。
case2,解决方案请上patch ID:ALPS01631923
CTS测试测项:android.media.cts.AdaptivePlaybackTest#testVP9_earlyEos failed
case1.code list当中media_codecs.xml当中匹配不到VP9。
case2.vp9_dec_getParameter在driver init之前导致报NE。
[SOLUTION]
针对case 1:
一般在code list会显示如下:
01-01 01:10:21.818 10842 10864 D mtkOmxCore: name(OMX.MTK.VIDEO.DECODER.RV), role(video_decoder.rv), path(liBMTkOmxVdec.so)
01-01 01:10:21.818 10842 10864 D MtkOmxCore: name(OMX.MTK.VIDEO.DECODER.VC1), role(video_decoder.vc1), path(libMtkOmxVdec.so)
01-01 01:10:21.818 10842 10864 D MtkOmxCore: name(OMX.MTK.VIDEO.DECODER.VPX), role(video_decoder.vpx), path(libMtkOmxVdec.so)
.........
可修改为:
\alps\mediatek\config\$Project\media_codecs.xml,添加如下这一行
<MediaCodec name="OMX.MTK.VIDEO.DECODER.VPX" type="video/x-vnd.on2.vp9" /
查看测试是否测试成功。若还没有成功可参照我司其他平台CTS测项过的修改即可。
针对case 2:
一般会有log显示backtrace如下:
backtrace:
#00 pc 0001efca /system/lib/libvcodecdrv.so (vp9_dec_getParameter+45)
#01 pc 0000a1b3 /system/lib/libvcodecdrv.so (eVDecDrvGetParam+262)
#02 pc 00008377 /system/lib/libMtkOmxVdec.so (MtkOmxVdec::GetConfig(void*, OMX_INDEXTYPE, void*)+82)
一般这种情况都是在上层呼叫flow有改动之后,在还沒有init driver之前就去get parameter。由于get parameter时需要driver handle, 而driver handle是在init時allocate的。所以此时会发出空指针错误。
其修改就是为了flow修改之后导致init driver没有进行完成而直接去get parameter.加保护。
case2,解决方案请上patch ID:ALPS01631923