MediaCodec, ACodec, OMX, DecoderDataLoop

概述 MediaCodec, ACodec, OMX之间解码数据的循环传递:

MediaCodec读取待解码的音视频数据到ACodec, ACodec通过OMX->emptyBuffer()将数据传递给OMX框架中厂商实现的特定的解码器解码数据..

OMX框架中厂商实现的特定的解码器将已经解码数据通过ACodec传递给Renderer, 送给底层.

ACodec中驱动循环填充解码数据的关键点是: kWhatFillThisBuffer 和 kWhatInputBufferFilled;

ACodec中驱动循环读取已经解码数据的关键点是: kWhatDrainThisBuffer 和 kWhatOutputBufferDrained;


MediaCodec, ACodec, OMX, DecoderDataLoop_第1张图片

你可能感兴趣的:(Android)