Loading media/aconfig/codec_fwk.aconfig +1 −0 Original line number Diff line number Diff line Loading @@ -7,6 +7,7 @@ container: "system" flag { name: "aidl_hal_input_surface" is_exported: true namespace: "codec_fwk" description: "Feature flags for enabling AIDL HAL InputSurface handling" bug: "201479783" Loading media/codec2/hal/client/client.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -21,7 +21,9 @@ #include <utils/Trace.h> #include <codec2/aidl/GraphicBufferAllocator.h> #include <codec2/common/HalSelection.h> #include <codec2/hidl/client.h> #include <C2Debug.h> #include <C2BufferPriv.h> #include <C2Config.h> // for C2StreamUsageTuning Loading Loading @@ -1832,9 +1834,7 @@ std::vector<C2Component::Traits> const& Codec2Client::ListComponents() { std::shared_ptr<Codec2Client::InputSurface> Codec2Client::CreateInputSurface( char const* serviceName) { int32_t inputSurfaceSetting = ::android::base::GetIntProperty( "debug.stagefright.c2inputsurface", int32_t(0)); if (inputSurfaceSetting <= 0) { if (!IsCodec2AidlInputSurfaceSelected()) { return nullptr; } size_t index = GetServiceNames().size(); Loading media/codec2/hal/common/Android.bp +5 −1 Original line number Diff line number Diff line Loading @@ -56,13 +56,17 @@ cc_library_static { "libaconfig_storage_read_api_cc", ], static_libs: ["aconfig_mediacodec_flags_c_lib"], static_libs: [ "aconfig_mediacodec_flags_c_lib", "android.media.codec-aconfig-cc", ], } cc_defaults { name: "libcodec2_hal_selection", static_libs: [ "aconfig_mediacodec_flags_c_lib", "android.media.codec-aconfig-cc", "libcodec2_hal_selection_static", ], shared_libs: [ Loading media/codec2/hal/common/HalSelection.cpp +17 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ // NOTE: due to dependency from mainline modules cannot use libsysprop // #include <android/sysprop/MediaProperties.sysprop.h> #include <android-base/properties.h> #include <android_media_codec.h> #include <com_android_media_codec_flags.h> #include <codec2/common/HalSelection.h> Loading Loading @@ -66,4 +67,20 @@ bool IsCodec2AidlHalSelected() { return false; } bool IsCodec2AidlInputSurfaceSelected() { if (!IsCodec2AidlHalSelected()) { return false; } int32_t inputSurfaceSetting = ::android::base::GetIntProperty( "debug.stagefright.c2inputsurface", int32_t(0)); if (inputSurfaceSetting <= 0) { return false; } if (!android::media::codec::provider_->aidl_hal_input_surface()) { return false; } return true; } } // namespace android media/codec2/hal/common/include/codec2/common/HalSelection.h +3 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,9 @@ namespace android { // Returns true iff AIDL c2 HAL is selected for the system bool IsCodec2AidlHalSelected(); // Returns true iff AIDL c2 InputSurface interface is selected for the system bool IsCodec2AidlInputSurfaceSelected(); } // namespace android #endif // CODEC2_HAL_SELECTION_H Loading
media/aconfig/codec_fwk.aconfig +1 −0 Original line number Diff line number Diff line Loading @@ -7,6 +7,7 @@ container: "system" flag { name: "aidl_hal_input_surface" is_exported: true namespace: "codec_fwk" description: "Feature flags for enabling AIDL HAL InputSurface handling" bug: "201479783" Loading
media/codec2/hal/client/client.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -21,7 +21,9 @@ #include <utils/Trace.h> #include <codec2/aidl/GraphicBufferAllocator.h> #include <codec2/common/HalSelection.h> #include <codec2/hidl/client.h> #include <C2Debug.h> #include <C2BufferPriv.h> #include <C2Config.h> // for C2StreamUsageTuning Loading Loading @@ -1832,9 +1834,7 @@ std::vector<C2Component::Traits> const& Codec2Client::ListComponents() { std::shared_ptr<Codec2Client::InputSurface> Codec2Client::CreateInputSurface( char const* serviceName) { int32_t inputSurfaceSetting = ::android::base::GetIntProperty( "debug.stagefright.c2inputsurface", int32_t(0)); if (inputSurfaceSetting <= 0) { if (!IsCodec2AidlInputSurfaceSelected()) { return nullptr; } size_t index = GetServiceNames().size(); Loading
media/codec2/hal/common/Android.bp +5 −1 Original line number Diff line number Diff line Loading @@ -56,13 +56,17 @@ cc_library_static { "libaconfig_storage_read_api_cc", ], static_libs: ["aconfig_mediacodec_flags_c_lib"], static_libs: [ "aconfig_mediacodec_flags_c_lib", "android.media.codec-aconfig-cc", ], } cc_defaults { name: "libcodec2_hal_selection", static_libs: [ "aconfig_mediacodec_flags_c_lib", "android.media.codec-aconfig-cc", "libcodec2_hal_selection_static", ], shared_libs: [ Loading
media/codec2/hal/common/HalSelection.cpp +17 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ // NOTE: due to dependency from mainline modules cannot use libsysprop // #include <android/sysprop/MediaProperties.sysprop.h> #include <android-base/properties.h> #include <android_media_codec.h> #include <com_android_media_codec_flags.h> #include <codec2/common/HalSelection.h> Loading Loading @@ -66,4 +67,20 @@ bool IsCodec2AidlHalSelected() { return false; } bool IsCodec2AidlInputSurfaceSelected() { if (!IsCodec2AidlHalSelected()) { return false; } int32_t inputSurfaceSetting = ::android::base::GetIntProperty( "debug.stagefright.c2inputsurface", int32_t(0)); if (inputSurfaceSetting <= 0) { return false; } if (!android::media::codec::provider_->aidl_hal_input_surface()) { return false; } return true; } } // namespace android
media/codec2/hal/common/include/codec2/common/HalSelection.h +3 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,9 @@ namespace android { // Returns true iff AIDL c2 HAL is selected for the system bool IsCodec2AidlHalSelected(); // Returns true iff AIDL c2 InputSurface interface is selected for the system bool IsCodec2AidlInputSurfaceSelected(); } // namespace android #endif // CODEC2_HAL_SELECTION_H