Merge changes from topic "fix-omx-dependencies"

* changes:
  OMX Hal: depend on libavservices_minijail_vendor.
  Fix OMX dependencies.
  Use vendor variant of libstagefright_foundation.
gugelfrei
Treehugger Robot 7 years ago committed by Gerrit Code Review
commit b403048401

@ -77,6 +77,7 @@ $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/soundfx/libvisualizer.so
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/soundfx/libreverbwrapper.so)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/soundfx/libbundlewrapper.so)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/soundfx/libaudiopreprocessing.so)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/libmediacodecservice.so)
# ************************************************
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST

@ -38,7 +38,7 @@ cc_library_shared {
shared_libs: [
"libcrypto",
"liblog",
"libstagefright_foundation_vendor",
"libstagefright_foundation",
"libutils",
],

@ -31,7 +31,7 @@ cc_test {
"libcrypto",
"libdrmclearkeyplugin",
"liblog",
"libstagefright_foundation_vendor",
"libstagefright_foundation",
"libutils",
],
}

@ -19,24 +19,117 @@ cc_library {
clang: true,
}
cc_library_shared {
name: "libmedia",
// TODO(b/35449087): merge back with libmedia when OMX implementatoins
// no longer use aidl wrappers (or remove OMX component form libmedia)
cc_defaults {
name: "libmedia_omx_defaults",
srcs: [
"aidl/android/IGraphicBufferSource.aidl",
"aidl/android/IOMXBufferSource.aidl",
"IMediaCodecList.cpp",
"IMediaCodecService.cpp",
"IOMX.cpp",
"MediaCodecBuffer.cpp",
"MediaCodecInfo.cpp",
"MediaDefs.cpp",
"OMXBuffer.cpp",
"omx/1.0/WGraphicBufferSource.cpp",
"omx/1.0/WOmx.cpp",
"omx/1.0/WOmxBufferSource.cpp",
"omx/1.0/WOmxNode.cpp",
"omx/1.0/WOmxObserver.cpp",
],
aidl: {
local_include_dirs: ["aidl"],
export_aidl_headers: true,
},
srcs: [
"aidl/android/IGraphicBufferSource.aidl",
"aidl/android/IOMXBufferSource.aidl",
shared_libs: [
"android.hidl.memory@1.0",
"android.hidl.token@1.0-utils",
"android.hardware.media.omx@1.0",
"android.hardware.media@1.0",
"libbase",
"libbinder",
"libcutils",
"libgui",
"libhidlbase",
"libhidlmemory",
"libhidltransport",
"libhwbinder",
"liblog",
"libstagefright_foundation",
"libui",
"libutils",
],
include_dirs: [
"frameworks/av/include", // for media/vndk/xmlparser/1.0/MediaCodecsXmlParser.h
"frameworks/av/include/media",
"frameworks/native/include", // for media/hardware/MetadataBufferType.h
"frameworks/native/include/media/openmax",
"frameworks/av/media/libstagefright",
],
export_shared_lib_headers: [
"android.hidl.memory@1.0",
"android.hidl.token@1.0-utils",
"android.hardware.media.omx@1.0",
"android.hardware.media@1.0",
"libhidlmemory",
"libstagefright_foundation",
"libui",
],
header_libs: [
"libmedia_headers",
],
export_header_lib_headers: [
"libmedia_headers",
],
export_include_dirs: [
"aidl",
],
cflags: [
"-Werror",
"-Wno-error=deprecated-declarations",
"-Wall",
],
sanitize: {
misc_undefined: [
"unsigned-integer-overflow",
"signed-integer-overflow",
],
cfi: true,
diag: {
cfi: true,
},
},
}
cc_library_shared {
name: "libmedia_omx",
vendor_available: true,
defaults: ["libmedia_omx_defaults"],
}
cc_library_shared {
name: "libmedia",
defaults: ["libmedia_omx_defaults"],
srcs: [
"IDataSource.cpp",
"IHDCP.cpp",
"BufferingSettings.cpp",
"mediaplayer.cpp",
"IMediaCodecList.cpp",
"IMediaCodecService.cpp",
"IMediaHTTPConnection.cpp",
"IMediaHTTPService.cpp",
"IMediaExtractor.cpp",
@ -52,9 +145,6 @@ cc_library_shared {
"IResourceManagerClient.cpp",
"IResourceManagerService.cpp",
"IStreamSource.cpp",
"MediaCodecBuffer.cpp",
"MediaCodecInfo.cpp",
"MediaDefs.cpp",
"MediaUtils.cpp",
"Metadata.cpp",
"mediarecorder.cpp",
@ -63,7 +153,6 @@ cc_library_shared {
"MidiDeviceInfo.cpp",
"MidiIoWrapper.cpp",
"JetPlayer.cpp",
"IOMX.cpp",
"MediaScanner.cpp",
"MediaScannerClient.cpp",
"CharacterEncodingDetector.cpp",
@ -71,14 +160,8 @@ cc_library_shared {
"MediaProfiles.cpp",
"MediaResource.cpp",
"MediaResourcePolicy.cpp",
"OMXBuffer.cpp",
"Visualizer.cpp",
"StringArray.cpp",
"omx/1.0/WGraphicBufferSource.cpp",
"omx/1.0/WOmx.cpp",
"omx/1.0/WOmxBufferSource.cpp",
"omx/1.0/WOmxNode.cpp",
"omx/1.0/WOmxObserver.cpp",
],
shared_libs: [
@ -106,11 +189,8 @@ cc_library_shared {
"libhwbinder",
"libhidlmemory",
"android.hidl.memory@1.0",
"android.hidl.token@1.0-utils",
"android.hardware.graphics.common@1.0",
"android.hardware.graphics.bufferqueue@1.0",
"android.hardware.media@1.0",
"android.hardware.media.omx@1.0",
],
export_shared_lib_headers: [
@ -119,8 +199,6 @@ cc_library_shared {
"libicui18n",
"libsonivox",
"libmediadrm",
"android.hidl.token@1.0-utils",
"android.hardware.media.omx@1.0",
"android.hidl.memory@1.0",
],
@ -136,7 +214,6 @@ cc_library_shared {
],
export_include_dirs: [
"aidl",
"include",
],
cflags: [

@ -89,7 +89,6 @@ cc_library_shared {
"libmediautils",
"libnetd_client",
"libsonivox",
"libstagefright_omx",
"libui",
"libutils",
"libvorbisidec",
@ -114,6 +113,7 @@ cc_library_shared {
"libstagefright_aacenc",
"libstagefright_matroska",
"libstagefright_mediafilter",
"libstagefright_omx_utils",
"libstagefright_webm",
"libstagefright_timedtext",
"libvpx",

@ -1,35 +1,6 @@
COMMON_SRCS = [
"AAtomizer.cpp",
"ABitReader.cpp",
"ABuffer.cpp",
"ADebug.cpp",
"AHandler.cpp",
"AHierarchicalStateMachine.cpp",
"ALooper.cpp",
"ALooperRoster.cpp",
"AMessage.cpp",
"ANetworkSession.cpp",
"AString.cpp",
"AStringUtils.cpp",
"ColorUtils.cpp",
"MediaBuffer.cpp",
"MediaBufferGroup.cpp",
"MetaData.cpp",
"ParsedMessage.cpp",
"base64.cpp",
"hexdump.cpp",
]
COMMON_LIBS = [
"libbinder",
"libutils",
"libui",
"libcutils",
"liblog",
]
cc_defaults {
name: "libstagefright_foundation-defaults",
cc_library_shared {
name: "libstagefright_foundation",
vendor_available: true,
include_dirs: [
"frameworks/av/include",
@ -59,6 +30,45 @@ cc_defaults {
"-Wall",
],
shared_libs: [
"libbinder",
"libutils",
"libui",
"libcutils",
"liblog",
"libpowermanager",
],
srcs: [
"AAtomizer.cpp",
"ABitReader.cpp",
"ABuffer.cpp",
"ADebug.cpp",
"AHandler.cpp",
"AHierarchicalStateMachine.cpp",
"ALooper.cpp",
"ALooperRoster.cpp",
"AMessage.cpp",
"ANetworkSession.cpp",
"AString.cpp",
"AStringUtils.cpp",
"AWakeLock.cpp",
"ColorUtils.cpp",
"MediaBuffer.cpp",
"MediaBufferGroup.cpp",
"MetaData.cpp",
"ParsedMessage.cpp",
"base64.cpp",
"hexdump.cpp",
],
target: {
vendor: {
exclude_shared_libs: ["libpowermanager"],
exclude_srcs: ["AWakeLock.cpp"],
},
},
clang: true,
sanitize: {
@ -72,20 +82,3 @@ cc_defaults {
},
},
}
cc_library_shared {
name: "libstagefright_foundation",
defaults: ["libstagefright_foundation-defaults"],
srcs: COMMON_SRCS + ["AWakeLock.cpp"],
shared_libs: COMMON_LIBS + ["libpowermanager"],
}
cc_library_shared {
name: "libstagefright_foundation_vendor",
defaults: ["libstagefright_foundation-defaults"],
vendor: true,
srcs: COMMON_SRCS,
shared_libs: COMMON_LIBS,
}

@ -1,5 +1,6 @@
cc_library_shared {
name: "libstagefright_omx",
vendor_available: true,
srcs: [
"FrameDropper.cpp",
@ -25,16 +26,19 @@ cc_library_shared {
],
include_dirs: [
"frameworks/av/include", // for media/vndk/xmlparser/1.0/MediaCodecsXmlParser.h
"frameworks/av/include/media/",
"frameworks/av/media/libstagefright",
"frameworks/av/media/libstagefright/include",
"frameworks/native/include", // for media/hardware/MetadataBufferType.h
"frameworks/native/include/media/hardware",
// TODO: export this?
"frameworks/native/include/media/openmax",
],
shared_libs: [
"libbase",
"libbinder",
"libmedia",
"libmedia_omx",
"libutils",
"liblog",
"libui",
@ -45,8 +49,10 @@ cc_library_shared {
"libhidlbase",
"libhidlmemory",
"libhidltransport",
"libnativewindow", // TODO(b/62923479): use header library
"libstagefright_xmlparser@1.0",
"android.hidl.memory@1.0",
"android.hidl.token@1.0-utils",
"android.hardware.media@1.0",
"android.hardware.media.omx@1.0",
"android.hardware.graphics.common@1.0",
@ -74,6 +80,27 @@ cc_library_shared {
},
}
cc_library_static {
name: "libstagefright_omx_utils",
srcs: ["OMXUtils.cpp"],
include_dirs: [
"frameworks/av/media/libstagefright",
"frameworks/native/include/media/hardware",
"frameworks/native/include/media/openmax",
],
shared_libs: ["libmedia"],
sanitize: {
misc_undefined: [
"signed-integer-overflow",
"unsigned-integer-overflow",
],
cfi: true,
diag: {
cfi: true,
},
},
}
//###############################################################################
subdirs = ["tests"]

@ -1,4 +1,4 @@
subdirs = [
"*",
"xmlparser/1.0",
]

@ -1,6 +1,6 @@
cc_library_shared {
name: "libstagefright_xmlparser@1.0",
vendor_available: true,
srcs: [
"MediaCodecsXmlParser.cpp",

@ -1,4 +0,0 @@
subdirs = [
"*",
]

@ -4,46 +4,52 @@ LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := MediaCodecService.cpp
LOCAL_SHARED_LIBRARIES := \
libmedia \
libmedia_omx \
libbinder \
libgui \
libutils \
liblog \
libstagefright_omx
LOCAL_C_INCLUDES := \
frameworks/av/include \
frameworks/av/media/libstagefright \
frameworks/av/media/libstagefright/include \
frameworks/native/include \
frameworks/native/include/media/openmax
LOCAL_MODULE:= libmediacodecservice
LOCAL_VENDOR_MODULE := true
LOCAL_32_BIT_ONLY := true
include $(BUILD_SHARED_LIBRARY)
# service executable
include $(CLEAR_VARS)
LOCAL_REQUIRED_MODULES_arm := mediacodec.policy
LOCAL_SRC_FILES := main_codecservice.cpp
LOCAL_SHARED_LIBRARIES := \
libmedia \
libmedia_omx \
libmediacodecservice \
libbinder \
libutils \
libgui \
liblog \
libbase \
libavservices_minijail \
libavservices_minijail_vendor \
libcutils \
libhwbinder \
libhidltransport \
libstagefright_omx \
android.hardware.media.omx@1.0 \
android.hidl.memory@1.0
LOCAL_C_INCLUDES := \
frameworks/av/include \
frameworks/av/media/libstagefright \
frameworks/av/media/libstagefright/include \
frameworks/native/include \
frameworks/native/include/media/openmax
LOCAL_MODULE := android.hardware.media.omx@1.0-service
LOCAL_MODULE_RELATIVE_PATH := hw
LOCAL_PROPRIETARY_MODULE := true
LOCAL_VENDOR_MODULE := true
LOCAL_32_BIT_ONLY := true
LOCAL_INIT_RC := android.hardware.media.omx@1.0-service.rc
include $(BUILD_EXECUTABLE)

@ -8,6 +8,14 @@ LOCAL_SHARED_LIBRARIES := libbase libminijail
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
include $(BUILD_SHARED_LIBRARY)
# Small library for media.extractor and media.codec sandboxing.
include $(CLEAR_VARS)
LOCAL_MODULE := libavservices_minijail_vendor
LOCAL_VENDOR_MODULE := true
LOCAL_SRC_FILES := minijail.cpp
LOCAL_SHARED_LIBRARIES := libbase libminijail_vendor
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
include $(BUILD_SHARED_LIBRARY)
# Unit tests.
include $(CLEAR_VARS)

Loading…
Cancel
Save