Acodec.cpp
Android Sources(in )中的“A”是什么意思libstagefright
???
完整路径如下:
android/frameworks/av/media/libstagefright/Acodec.cpp
请解释答案和背景知识。
Acodec.cpp
Android Sources(in )中的“A”是什么意思libstagefright
???
完整路径如下:
android/frameworks/av/media/libstagefright/Acodec.cpp
请解释答案和背景知识。
在我的理解中,A
inACodec
代表异步。我相信这是基于整体编解码器功能的实现/设计。
在 的情况下ACodec
,所有操作都通过messages
从不同线程发布来处理。收到消息后,onMessageReceived
将安排方法然后处理event
. 这样,此实现中的几乎所有操作都是异步的,因此得名。
例如,设置过程是通过此处显示的消息。在onSetup
其中,组件实例被创建和配置。
类似的操作集OMXCodec
在本质上是同步的,如OMXCodec::create
. 通常,OMXCodec::create
作为AwesomePlayer::initVideoDecoder
or的一部分AwesomePlayer::initAudioDecoder
调用,在这种情况下,调用OMXCodec
是同步的。
我不确切知道,但在我看来,“A”意味着抽象。我认为这是一个实现使用不同编解码器而不指定精确编解码器类型的逻辑的类。
正如 Ganesh 所说,我还认为“A”代表“异步”。因为还存在一个处理来自客户端的同步调用的 OmxCodec 类。