OMXNodeInstance.cpp
OMX_ERRORTYPE OMXNodeInstance::OnFillBufferDone()
msg-omx_message::FILL_BUFFER_DONE
Acodec.cpp
bool ACodec::BaseState::onOMXFillBufferDone(){
mCodec->mBufferChannel->drainThisBuffer(info->mBufferID, flags);
}
ACodecBufferChannel.cpp
void ACodecBufferChannel::drainThisBuffer(){
mCallback->onOutputBufferAvailable()
}
MediaCodec.cpp
void BufferCallback::onOutputBufferAvailable(){
msg - kWhatDrainThisBuffer
}
void MediaCodec::onOutputBufferAvailable() {
msg - MediaCodec::CB_OUTPUT_AVAILABLE
}
NuPlayerDecoder.cpp
bool NuPlayer::Decoder::handleAnOutputBuffer(){
mRenderer->queueBuffer(mIsAudio, buffer, reply);
}
NuPlayerRenderer.cpp
void NuPlayer::Renderer::queueBuffer(){
msg - kWhatQueueBuffer
}
void NuPlayer::Renderer::onQueueBuffer(){
postDrainAudioQueue_l();
...
postDrainVideoQueue();
}