stagefright框架(二)- 和OpenMAX的運作
来源:互联网 发布:oracle数据库巡检模板 编辑:程序博客网 时间:2024/05/16 18:52
(1) OMX_Init
OMXClient mClient;
AwesomePlayer::AwesomePlayer()
{
mClient.connect();
}
status_t OMXClient::connect()
{
mOMX = service->getOMX();
}
sp<IOMX> MediaPlayerService::getOMX()
{
mOMX = new OMX;
}
OMX::OMX(): mMaster(new OMXMaster)
OMXMaster::OMXMaster()
{
addPlugin(new OMXPVCodecsPlugin);
}
OMXPVCodecsPlugin::OMXPVCodecsPlugin()
{
OMX_MasterInit();
}
OMX_ERRORTYPE OMX_MasterInit()<--under OpenCORE
{
return OMX_Init();
}
(2) OMX_SendCommand
OMXCodec::function_name()
{
mOMX->sendCommand(mNode, OMX_CommandStateSet, OMX_StateIdle);
}
status_t OMX::sendCommand(node, cmd, param)
{
return findInstance(node)->sendCommand(cmd, param);
}
status_t OMXNodeInstance::sendCommand(cmd, param)
{
OMX_SendCommand(mHandle, cmd, param,NULL);
}
(3) 其他作用在 OMX元件的指令
其他作用在OMX元件的指令也和OMX_SendCommand的call path一樣,請見下表:
OMXCodec
OMX
OMXNodeInstance
useBuffer
useBuffer (OMX_UseBuffer)
getParameter
getParameter (OMX_GetParameter)
fillBuffer
fillBuffer (OMX_FillThisBuffer)
emptyBuffer
emptyBuffer (OMX_EmptyThisBuffer)
(4) Callback Functions
OMX_CALLBACKTYPE OMXNodeInstance::kCallbacks=
{
&OnEvent,<---------------omx_message::EVENT
&OnEmptyBufferDone,<-----omx_message::EMPTY_BUFFER_DONE
&OnFillBufferDone <------- omx_message::FILL_BUFFER_DONE
}
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作 .
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- stagefright框架(二)- 和OpenMAX的運作
- StageFright框架(二)和OpenMAX的運作
- TCP的三次握手(建立连接)和四次挥手(关闭连接)
- 关于WIN7 双网卡 多播 问题
- 转载:KVM虚拟化学习笔记
- Mysql增量备份,完全恢复
- 设计师的自我修养:细数优点和缺点
- stagefright框架(二)- 和OpenMAX的運作
- 用Iterator实现遍历集合
- 如何通过终端查看 linux 的系统信息
- jdk1.5的新特征
- input如何设置默认值
- android 电容屏(三):驱动调试之驱动程序分析篇
- 20140926
- web前台获取服务器端时间
- js数组操作