:
OMX_CALLBACKTYPE OMXNodeInstance::kCallbacks = {
&OnEvent, &OnEmptyBufferDone, &OnFillBufferDone
};
status_t OMX:allocateNode
...
OMX_ERRORTYPE err = mMaster->makeComponentInstance(name, &OMXNodeInstance::kCallbacks, instance, &handle);
在创建omx component的时候带入kCallbacks,供omx component notify.
当omx component有消息通知的时候,会首先调到里面的
void OMXNodeInstance::onEvent()
OMX_ERRORTYPE OMXNodeInstance::OnEmptyBufferDone()/OnFillBufferDone()
OMXNodeInstance会再通过instance->owner调到里面的
OMX_ERRORTYPE OMX::OnEvent()
OMX_ERRORTYPE OMX::OnEmptyBufferDone()/OnFillBufferDone
OMX会再通过dispatcher->post/loop/dispatch再回到里面的onMessage()
OMXNodeInstance会再通过mObserver->onMessage()回到ACodec中