捡了一台红米 1TD 手机,刷了 cm10.1 ,基本都正常,但发现 kodi 硬解无视频只有声音( mxplayer 硬解 ok )。 adb log 看出问题可能在:
E/IMGSRV ( 131): :0: gralloc_private_getIonFd: error in : hnd=42c8cc70,numFds=1
W/GraphicBufferMapper( 131): getIonFd(...) failed -22 (Invalid argument)
找了 miui v5 的 rom ,把内核及相关的二进制动态链接库刷进去问题依旧。
所以我怀疑是 android java 层的问题,下了 cm10.1 的源码按照 github 上 mtk6589 的 build 编译出 rom 刷进去直接卡白米。
google 一下,发现如下代码:
#ifdef MTK_MT6589
status_t GraphicBufferMapper::getIonFd(buffer_handle_t handle, int *idx, int *num)
{
ATRACE_CALL();
status_t err;
if (!mExtraDev) {
ALOGE("gralloc extra device is not supported");
return INVALID_OPERATION;
}
err = mExtraDev->getIonFd(mExtraDev, handle, idx, num);
ALOGW_IF(err, "getIonFd(...) failed %d (%s)", err, strerror(-err));
return err;
}
#endif
结合前面的 log 看来是 mtk6589 需要对 android 的 java 源码做很多修改才能跑起来? 望有经验或相关代码资源的指教一下
E/IMGSRV ( 131): :0: gralloc_private_getIonFd: error in : hnd=42c8cc70,numFds=1
W/GraphicBufferMapper( 131): getIonFd(...) failed -22 (Invalid argument)
找了 miui v5 的 rom ,把内核及相关的二进制动态链接库刷进去问题依旧。
所以我怀疑是 android java 层的问题,下了 cm10.1 的源码按照 github 上 mtk6589 的 build 编译出 rom 刷进去直接卡白米。
google 一下,发现如下代码:
#ifdef MTK_MT6589
status_t GraphicBufferMapper::getIonFd(buffer_handle_t handle, int *idx, int *num)
{
ATRACE_CALL();
status_t err;
if (!mExtraDev) {
ALOGE("gralloc extra device is not supported");
return INVALID_OPERATION;
}
err = mExtraDev->getIonFd(mExtraDev, handle, idx, num);
ALOGW_IF(err, "getIonFd(...) failed %d (%s)", err, strerror(-err));
return err;
}
#endif
结合前面的 log 看来是 mtk6589 需要对 android 的 java 源码做很多修改才能跑起来? 望有经验或相关代码资源的指教一下