Chinaunix首页 | 论坛 | 博客
  • 博客访问: 74574
  • 博文数量: 22
  • 博客积分: 1475
  • 博客等级: 上尉
  • 技术积分: 260
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-04 23:39
文章分类

全部博文(22)

文章存档

2013年(1)

2011年(6)

2010年(15)

我的朋友

分类: LINUX

2011-06-03 16:28:41

libstagefrighthw.so
1,createOMXPlugin
{
    1,new SECOMXPlugin;
    2,SECOMXPlugin()
    {
        1,open the libSEC_OMX_Core.so
        2,get all interface fun,example for SEC_OMX_Init,SEC_OMX_DeInit,SEC_OMX_DeInit
        3,call SEC_OMX_Init
    }
}


libSEC_OMX_Core.so
1,SEC_OMX_Init
{
    SEC_OMX_Component_Register
    {
        1,read file of /system/etc/secomxregistry,get componet library name
        2,call SEC_OMX_COMPONENT_Library_Register of special component,get all component info and save to global list.
    }
}

2,SEC_OMX_GetHandle
{
    1,base on the name supplied to look up the component.
    2,open the library file whire the component is.
    2,call the function SEC_OMX_ComponentInit of the component,return the handle of OMX_COMPONENTTYPE.
    4,check if the functions of handle are ok.
    5,return handle to hight level  
}

libOMX.SEC.AVC.Decoder.so
1,SEC_OMX_COMPONENT_Library_Register
{
    componentName is "OMX.SEC.AVC.Decoder"
    roles is "video_decoder.avc"
}

//key point

SSBSIP_MFC_ERROR_CODE SsbSipMfcDecExe(void *openHandle, int lengthBufFill)
{
pCTX->displayStatus = 1;//very important for continue display
}

//
SSBSIP_MFC_ERROR_CODE SsbSipMfcDecSetConfig(void *openHandle, SSBSIP_MFC_DEC_CONF conf_type, void *value)
{
    case MFC_DEC_SETCONF_FRAME_TAG:
    pCTX->in_frametag = *((int *)value);//sync for frame
        return MFC_RET_OK;
}





阅读(2861) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~