版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012188065/article/details/87382774
1、QComDecoder输出buffer的分配方式
ACodec通过 allocateOutputMetadataBuffers接口来分别输出buffer,
分配一个空的VideoGrallocMetadata 结构体,复制给OMX_BUFFERHEADERTYPE结构体中的pBuffer
解码启动时,ACodec从NativeWindow中dequeue出ANativeWindowBuffer类型的buffer,转成GraphicBuffer类型
并将GraphicBuffer中的handle赋值给VideoGrallocMetadata结构体中的pHandle,完成输出buffer的绑定。
本质上是surface完成buffer的申请,之后传给decoder并与之绑定。
GoogleDecoder输出buffer的分配方式
ACodec中直接分配好buffer,通过useBuffer接口,赋值给OMX_BUFFERHEADERTYPE结构体中的pBuffer。
本质上是ACodec完成申请,之后传给decoder。