本文梳理MediaCodec初始化流程,即create流程,基于7.0代码。流程图如下,创建流程还是比较清晰简单的。
代码见:
frameworks/base/media/java/android/media/MediaCodec.java
frameworks/base/media/jni/android_media_MediaCodec.h
frameworks/base/media/jni/android_media_MediaCodec.cpp
frameworks/av/media/libstagefright/MediaCodec.cpp
frameworks/av/media/libstagefright/ACodec.cpp
frameworks/av/include/media/stagefright/OMXClient.h
frameworks/av/media/libstagefright/OMXClient.cpp
创建MediaCodec,进入native_setup;
public static MediaCodec createByCodecName(@NonNull String name