Loading apex/Android.bp +1 −1 Original line number Diff line number Diff line Loading @@ -173,10 +173,10 @@ apex_defaults { "mediaswcodec", ], native_shared_libs: [ "libapexcodecs", "libcodec2_hidl@1.0", "libcodec2_hidl@1.1", "libcodec2_hidl@1.2", "libcom.android.media.swcodec.apexcodecs", "libstagefright_foundation", ], prebuilts: [ Loading media/codec2/hal/client/Android.bp +2 −2 Original line number Diff line number Diff line Loading @@ -42,8 +42,8 @@ cc_library { cpp_std: "gnu++20", header_libs: [ "libapexcodecs-header", "libcodec2_internal", // private "libcom.android.media.swcodec.apexcodecs-header", ], shared_libs: [ Loading Loading @@ -82,7 +82,7 @@ cc_library { ], export_header_lib_headers: [ "libapexcodecs-header", "libcom.android.media.swcodec.apexcodecs-header", ], export_shared_lib_headers: [ Loading media/codec2/hal/client/ApexCodecsLazy.cpp +15 −12 Original line number Diff line number Diff line Loading @@ -30,10 +30,11 @@ using android::RWLock; namespace { // This file provides a lazy interface to libapexcodecs.so to address early boot dependencies. // This file provides a lazy interface to libcom.android.media.swcodec.apexcodecs.so // to address early boot dependencies. // Method pointers to libapexcodecs methods are held in an array which simplifies checking // all pointers are initialized. // Method pointers to libcom.android.media.swcodec.apexcodecs methods are held in an array // which simplifies checking all pointers are initialized. enum MethodIndex { k_ApexCodec_Component_create, k_ApexCodec_Component_destroy, Loading Loading @@ -84,14 +85,15 @@ public: } private: static void* LoadLibapexcodecs(int dlopen_flags) { return dlopen("libapexcodecs.so", dlopen_flags); static void* LoadApexCodecs(int dlopen_flags) { return dlopen("libcom.android.media.swcodec.apexcodecs.so", dlopen_flags); } // Initialization and symbol binding. void bindSymbol_l(void* handle, const char* name, enum MethodIndex index) { void* symbol = dlsym(handle, name); ALOGI_IF(symbol == nullptr, "Failed to find symbol '%s' in libapexcodecs.so: %s", ALOGI_IF(symbol == nullptr, "Failed to find symbol '%s' in libcom.android.media.swcodec.apexcodecs.so: %s", name, dlerror()); mMethods[index] = symbol; } Loading @@ -103,9 +105,9 @@ private: return true; } } void* handle = LoadLibapexcodecs(RTLD_NOW); void* handle = LoadApexCodecs(RTLD_NOW); if (handle == nullptr) { ALOGI("Failed to load libapexcodecs.so: %s", dlerror()); ALOGI("Failed to load libcom.android.media.swcodec.apexcodecs.so: %s", dlerror()); return false; } Loading Loading @@ -137,7 +139,8 @@ private: // Check every symbol is bound. for (int i = 0; i < k_MethodCount; ++i) { if (mMethods[i] == nullptr) { ALOGI("Uninitialized method in libapexcodecs_lazy at index: %d", i); ALOGI("Uninitialized method in " "libcom.android.media.swcodec.apexcodecs_lazy at index: %d", i); return false; } } Loading @@ -146,7 +149,7 @@ private: } RWLock mLock; // Table of methods pointers in libapexcodecs APIs. // Table of methods pointers in libcom.android.media.swcodec.apexcodecs APIs. void* mMethods[k_MethodCount]; bool mInit{false}; }; Loading Loading @@ -274,9 +277,9 @@ ApexCodec_Status ApexCodec_ParamDescriptors_getDescriptor( descriptors, index, attr, name, dependencies, numDependencies); } ApexCodec_Status ApexCodec_ParamDescriptors_destroy( void ApexCodec_ParamDescriptors_destroy( ApexCodec_ParamDescriptors *descriptors) { INVOKE_METHOD(ApexCodec_ParamDescriptors_destroy, APEXCODEC_STATUS_OMITTED, descriptors); INVOKE_METHOD(ApexCodec_ParamDescriptors_destroy, void(), descriptors); } ApexCodec_Status ApexCodec_Configurable_querySupportedParams( Loading media/module/libapexcodecs/Android.bp +8 −8 Original line number Diff line number Diff line Loading @@ -19,7 +19,7 @@ package { } cc_defaults { name: "libapexcodecs-defaults", name: "libcom.android.media.swcodec.apexcodecs-defaults", header_libs: [ "libbase_headers", ], Loading @@ -41,7 +41,7 @@ cc_defaults { } cc_library_headers { name: "libapexcodecs-header", name: "libcom.android.media.swcodec.apexcodecs-header", visibility: [ "//frameworks/av/apex:__subpackages__", "//frameworks/av/media/codec2/hal/client", Loading @@ -50,8 +50,8 @@ cc_library_headers { } cc_library { name: "libapexcodecs-testing", defaults: ["libapexcodecs-defaults"], name: "libcom.android.media.swcodec.apexcodecs-testing", defaults: ["libcom.android.media.swcodec.apexcodecs-defaults"], visibility: [ ":__subpackages__", Loading @@ -59,8 +59,8 @@ cc_library { } cc_library { name: "libapexcodecs", defaults: ["libapexcodecs-defaults"], name: "libcom.android.media.swcodec.apexcodecs", defaults: ["libcom.android.media.swcodec.apexcodecs-defaults"], visibility: [ "//frameworks/av/apex:__subpackages__", Loading @@ -68,9 +68,9 @@ cc_library { ], min_sdk_version: "apex_inherit", version_script: "libapexcodecs.map.txt", version_script: "libcom.android.media.swcodec.apexcodecs.map.txt", stubs: { symbol_file: "libapexcodecs.map.txt", symbol_file: "libcom.android.media.swcodec.apexcodecs.map.txt", versions: ["36"], }, Loading media/module/libapexcodecs/ApexCodecs.cpp +1 −3 Original line number Diff line number Diff line Loading @@ -128,9 +128,7 @@ ApexCodec_Status ApexCodec_ParamDescriptors_getDescriptor( return APEXCODEC_STATUS_OMITTED; } ApexCodec_Status ApexCodec_ParamDescriptors_destroy( ApexCodec_ParamDescriptors *descriptors) { return APEXCODEC_STATUS_OMITTED; void ApexCodec_ParamDescriptors_destroy(ApexCodec_ParamDescriptors *descriptors) { } ApexCodec_Status ApexCodec_Configurable_querySupportedParams( Loading Loading
apex/Android.bp +1 −1 Original line number Diff line number Diff line Loading @@ -173,10 +173,10 @@ apex_defaults { "mediaswcodec", ], native_shared_libs: [ "libapexcodecs", "libcodec2_hidl@1.0", "libcodec2_hidl@1.1", "libcodec2_hidl@1.2", "libcom.android.media.swcodec.apexcodecs", "libstagefright_foundation", ], prebuilts: [ Loading
media/codec2/hal/client/Android.bp +2 −2 Original line number Diff line number Diff line Loading @@ -42,8 +42,8 @@ cc_library { cpp_std: "gnu++20", header_libs: [ "libapexcodecs-header", "libcodec2_internal", // private "libcom.android.media.swcodec.apexcodecs-header", ], shared_libs: [ Loading Loading @@ -82,7 +82,7 @@ cc_library { ], export_header_lib_headers: [ "libapexcodecs-header", "libcom.android.media.swcodec.apexcodecs-header", ], export_shared_lib_headers: [ Loading
media/codec2/hal/client/ApexCodecsLazy.cpp +15 −12 Original line number Diff line number Diff line Loading @@ -30,10 +30,11 @@ using android::RWLock; namespace { // This file provides a lazy interface to libapexcodecs.so to address early boot dependencies. // This file provides a lazy interface to libcom.android.media.swcodec.apexcodecs.so // to address early boot dependencies. // Method pointers to libapexcodecs methods are held in an array which simplifies checking // all pointers are initialized. // Method pointers to libcom.android.media.swcodec.apexcodecs methods are held in an array // which simplifies checking all pointers are initialized. enum MethodIndex { k_ApexCodec_Component_create, k_ApexCodec_Component_destroy, Loading Loading @@ -84,14 +85,15 @@ public: } private: static void* LoadLibapexcodecs(int dlopen_flags) { return dlopen("libapexcodecs.so", dlopen_flags); static void* LoadApexCodecs(int dlopen_flags) { return dlopen("libcom.android.media.swcodec.apexcodecs.so", dlopen_flags); } // Initialization and symbol binding. void bindSymbol_l(void* handle, const char* name, enum MethodIndex index) { void* symbol = dlsym(handle, name); ALOGI_IF(symbol == nullptr, "Failed to find symbol '%s' in libapexcodecs.so: %s", ALOGI_IF(symbol == nullptr, "Failed to find symbol '%s' in libcom.android.media.swcodec.apexcodecs.so: %s", name, dlerror()); mMethods[index] = symbol; } Loading @@ -103,9 +105,9 @@ private: return true; } } void* handle = LoadLibapexcodecs(RTLD_NOW); void* handle = LoadApexCodecs(RTLD_NOW); if (handle == nullptr) { ALOGI("Failed to load libapexcodecs.so: %s", dlerror()); ALOGI("Failed to load libcom.android.media.swcodec.apexcodecs.so: %s", dlerror()); return false; } Loading Loading @@ -137,7 +139,8 @@ private: // Check every symbol is bound. for (int i = 0; i < k_MethodCount; ++i) { if (mMethods[i] == nullptr) { ALOGI("Uninitialized method in libapexcodecs_lazy at index: %d", i); ALOGI("Uninitialized method in " "libcom.android.media.swcodec.apexcodecs_lazy at index: %d", i); return false; } } Loading @@ -146,7 +149,7 @@ private: } RWLock mLock; // Table of methods pointers in libapexcodecs APIs. // Table of methods pointers in libcom.android.media.swcodec.apexcodecs APIs. void* mMethods[k_MethodCount]; bool mInit{false}; }; Loading Loading @@ -274,9 +277,9 @@ ApexCodec_Status ApexCodec_ParamDescriptors_getDescriptor( descriptors, index, attr, name, dependencies, numDependencies); } ApexCodec_Status ApexCodec_ParamDescriptors_destroy( void ApexCodec_ParamDescriptors_destroy( ApexCodec_ParamDescriptors *descriptors) { INVOKE_METHOD(ApexCodec_ParamDescriptors_destroy, APEXCODEC_STATUS_OMITTED, descriptors); INVOKE_METHOD(ApexCodec_ParamDescriptors_destroy, void(), descriptors); } ApexCodec_Status ApexCodec_Configurable_querySupportedParams( Loading
media/module/libapexcodecs/Android.bp +8 −8 Original line number Diff line number Diff line Loading @@ -19,7 +19,7 @@ package { } cc_defaults { name: "libapexcodecs-defaults", name: "libcom.android.media.swcodec.apexcodecs-defaults", header_libs: [ "libbase_headers", ], Loading @@ -41,7 +41,7 @@ cc_defaults { } cc_library_headers { name: "libapexcodecs-header", name: "libcom.android.media.swcodec.apexcodecs-header", visibility: [ "//frameworks/av/apex:__subpackages__", "//frameworks/av/media/codec2/hal/client", Loading @@ -50,8 +50,8 @@ cc_library_headers { } cc_library { name: "libapexcodecs-testing", defaults: ["libapexcodecs-defaults"], name: "libcom.android.media.swcodec.apexcodecs-testing", defaults: ["libcom.android.media.swcodec.apexcodecs-defaults"], visibility: [ ":__subpackages__", Loading @@ -59,8 +59,8 @@ cc_library { } cc_library { name: "libapexcodecs", defaults: ["libapexcodecs-defaults"], name: "libcom.android.media.swcodec.apexcodecs", defaults: ["libcom.android.media.swcodec.apexcodecs-defaults"], visibility: [ "//frameworks/av/apex:__subpackages__", Loading @@ -68,9 +68,9 @@ cc_library { ], min_sdk_version: "apex_inherit", version_script: "libapexcodecs.map.txt", version_script: "libcom.android.media.swcodec.apexcodecs.map.txt", stubs: { symbol_file: "libapexcodecs.map.txt", symbol_file: "libcom.android.media.swcodec.apexcodecs.map.txt", versions: ["36"], }, Loading
media/module/libapexcodecs/ApexCodecs.cpp +1 −3 Original line number Diff line number Diff line Loading @@ -128,9 +128,7 @@ ApexCodec_Status ApexCodec_ParamDescriptors_getDescriptor( return APEXCODEC_STATUS_OMITTED; } ApexCodec_Status ApexCodec_ParamDescriptors_destroy( ApexCodec_ParamDescriptors *descriptors) { return APEXCODEC_STATUS_OMITTED; void ApexCodec_ParamDescriptors_destroy(ApexCodec_ParamDescriptors *descriptors) { } ApexCodec_Status ApexCodec_Configurable_querySupportedParams( Loading