QCom Decoder与GoogleDecoder输出buffer的分配方式

版权声明:本文为博主原创文章,未经博主允许不得转载。 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。

猜你喜欢

转载自blog.csdn.net/u012188065/article/details/87382774