1cc_library_headers { 2 name: "libmedia_headers", 3 vendor_available: true, 4 export_include_dirs: ["include"], 5 header_libs:[ 6 "libgui_headers", 7 "libstagefright_headers", 8 "media_plugin_headers", 9 ], 10 export_header_lib_headers: [ 11 "libgui_headers", 12 "libstagefright_headers", 13 "media_plugin_headers", 14 ], 15} 16 17cc_library { 18 name: "libmedia_helper", 19 vendor_available: true, 20 vndk: { 21 enabled: true, 22 }, 23 srcs: ["AudioParameter.cpp", "TypeConverter.cpp", "TimeCheck.cpp"], 24 cflags: [ 25 "-Werror", 26 "-Wno-error=deprecated-declarations", 27 "-Wall", 28 ], 29 shared_libs: ["libutils", "liblog"], 30 header_libs: [ 31 "libmedia_headers", 32 "libaudioclient_headers", 33 "libaudio_system_headers", 34 ], 35 clang: true, 36} 37 38cc_library_shared { 39 name: "libmedia_omx", 40 vendor_available: true, 41 vndk: { 42 enabled: true, 43 }, 44 45 srcs: [ 46 "aidl/android/IGraphicBufferSource.aidl", 47 "aidl/android/IOMXBufferSource.aidl", 48 49 "IMediaCodecList.cpp", 50 "IOMX.cpp", 51 "MediaCodecBuffer.cpp", 52 "MediaCodecInfo.cpp", 53 "OMXBuffer.cpp", 54 "omx/1.0/WGraphicBufferSource.cpp", 55 "omx/1.0/WOmx.cpp", 56 "omx/1.0/WOmxBufferSource.cpp", 57 "omx/1.0/WOmxNode.cpp", 58 "omx/1.0/WOmxObserver.cpp", 59 ], 60 61 aidl: { 62 local_include_dirs: ["aidl"], 63 export_aidl_headers: true, 64 }, 65 66 shared_libs: [ 67 "android.hidl.token@1.0-utils", 68 "android.hardware.media.omx@1.0", 69 "libbinder", 70 "libcutils", 71 "libgui", 72 "libhidlbase", 73 "libhidltransport", 74 "liblog", 75 "libstagefright_foundation", 76 "libui", 77 "libutils", 78 ], 79 80 export_shared_lib_headers: [ 81 "android.hidl.token@1.0-utils", 82 "android.hardware.media.omx@1.0", 83 "libstagefright_foundation", 84 "libui", 85 ], 86 87 header_libs: [ 88 "libmedia_headers", 89 ], 90 91 export_header_lib_headers: [ 92 "libmedia_headers", 93 ], 94 95 export_include_dirs: [ 96 "aidl", 97 ], 98 99 cflags: [ 100 "-Werror", 101 "-Wno-error=deprecated-declarations", 102 "-Wall", 103 ], 104 105 sanitize: { 106 misc_undefined: [ 107 "unsigned-integer-overflow", 108 "signed-integer-overflow", 109 ], 110 cfi: true, 111 diag: { 112 cfi: true, 113 }, 114 }, 115} 116 117cc_library_static { 118 name: "libmedia_midiiowrapper", 119 120 srcs: ["MidiIoWrapper.cpp"], 121 122 static_libs: [ 123 "libsonivox", 124 ], 125 126 cflags: [ 127 "-Werror", 128 "-Wno-error=deprecated-declarations", 129 "-Wall", 130 ], 131 132 sanitize: { 133 misc_undefined: [ 134 "unsigned-integer-overflow", 135 "signed-integer-overflow", 136 ], 137 cfi: true, 138 diag: { 139 cfi: true, 140 }, 141 }, 142} 143 144filegroup { 145 name: "mediaupdateservice_aidl", 146 srcs: [ 147 "aidl/android/media/IMediaExtractorUpdateService.aidl", 148 ], 149} 150 151cc_library { 152 name: "libmedia", 153 154 srcs: [ 155 ":mediaupdateservice_aidl", 156 "IDataSource.cpp", 157 "BufferingSettings.cpp", 158 "mediaplayer.cpp", 159 "IMediaHTTPConnection.cpp", 160 "IMediaHTTPService.cpp", 161 "IMediaExtractor.cpp", 162 "IMediaExtractorService.cpp", 163 "IMediaPlayerService.cpp", 164 "IMediaPlayerClient.cpp", 165 "IMediaRecorderClient.cpp", 166 "IMediaPlayer.cpp", 167 "IMediaRecorder.cpp", 168 "IMediaSource.cpp", 169 "IRemoteDisplay.cpp", 170 "IRemoteDisplayClient.cpp", 171 "IResourceManagerClient.cpp", 172 "IResourceManagerService.cpp", 173 "IStreamSource.cpp", 174 "MediaUtils.cpp", 175 "Metadata.cpp", 176 "mediarecorder.cpp", 177 "IMediaMetadataRetriever.cpp", 178 "mediametadataretriever.cpp", 179 "MidiDeviceInfo.cpp", 180 "JetPlayer.cpp", 181 "MediaScanner.cpp", 182 "MediaScannerClient.cpp", 183 "CharacterEncodingDetector.cpp", 184 "IMediaDeathNotifier.cpp", 185 "MediaProfiles.cpp", 186 "MediaResource.cpp", 187 "MediaResourcePolicy.cpp", 188 "Visualizer.cpp", 189 "StringArray.cpp", 190 ], 191 192 aidl: { 193 local_include_dirs: ["aidl"], 194 export_aidl_headers: true, 195 }, 196 197 header_libs: [ 198 "libstagefright_headers", 199 ], 200 201 export_header_lib_headers: [ 202 "libstagefright_headers", 203 ], 204 205 shared_libs: [ 206 "android.hidl.token@1.0-utils", 207 "liblog", 208 "libcutils", 209 "libutils", 210 "libbinder", 211 "libsonivox", 212 "libicuuc", 213 "libicui18n", 214 "libexpat", 215 "libcamera_client", 216 "libstagefright_foundation", 217 "libmediaextractor", 218 "libgui", 219 "libdl", 220 "libaudioutils", 221 "libaudioclient", 222 "libmedia_omx", 223 ], 224 225 export_shared_lib_headers: [ 226 "libaudioclient", 227 "libbinder", 228 "libicuuc", 229 "libicui18n", 230 "libsonivox", 231 "libmedia_omx", 232 ], 233 234 static_libs: [ 235 "libc_malloc_debug_backtrace", // for memory heap analysis 236 "libmedia_midiiowrapper", 237 ], 238 239 export_include_dirs: [ 240 "include", 241 ], 242 243 cflags: [ 244 "-Werror", 245 "-Wno-error=deprecated-declarations", 246 "-Wall", 247 ], 248 249 version_script: "exports.lds", 250 251 sanitize: { 252 misc_undefined: [ 253 "unsigned-integer-overflow", 254 "signed-integer-overflow", 255 ], 256 cfi: true, 257 diag: { 258 cfi: true, 259 }, 260 }, 261} 262 263cc_library { 264 name: "libmedia_player2_util", 265 266 srcs: [ 267 "BufferingSettings.cpp", 268 "DataSourceDesc.cpp", 269 "IDataSource.cpp", 270 "IMediaExtractor.cpp", 271 "IMediaExtractorService.cpp", 272 "IMediaSource.cpp", 273 "MediaCodecBuffer.cpp", 274 "MediaUtils.cpp", 275 "Metadata.cpp", 276 "NdkWrapper.cpp", 277 ], 278 279 shared_libs: [ 280 "libbinder", 281 "libcutils", 282 "liblog", 283 "libmediaextractor", 284 "libmediandk", 285 "libnativewindow", 286 "libstagefright_foundation", 287 "libui", 288 "libutils", 289 ], 290 291 export_shared_lib_headers: [ 292 "libbinder", 293 "libmediandk", 294 ], 295 296 header_libs: [ 297 "media_plugin_headers", 298 ], 299 300 static_libs: [ 301 "libstagefright_rtsp", 302 "libstagefright_timedtext", 303 ], 304 305 export_include_dirs: [ 306 "include", 307 ], 308 309 cflags: [ 310 "-Werror", 311 "-Wno-error=deprecated-declarations", 312 "-Wall", 313 ], 314 315 sanitize: { 316 misc_undefined: [ 317 "unsigned-integer-overflow", 318 "signed-integer-overflow", 319 ], 320 cfi: true, 321 diag: { 322 cfi: true, 323 }, 324 }, 325} 326