/* * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ apply from: '../../constants.gradle' apply plugin: 'com.android.application' android { namespace 'androidx.media3.demo.transformer' compileSdk project.ext.compileSdkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } defaultConfig { versionName project.ext.releaseVersion versionCode project.ext.releaseVersionCode minSdkVersion project.ext.minSdkVersion targetSdkVersion project.ext.appTargetSdkVersion } buildTypes { release { shrinkResources true minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt') signingConfig signingConfigs.debug } } lintOptions { // This demo app isn't indexed and doesn't have translations. disable 'GoogleAppIndexingWarning','MissingTranslation' } flavorDimensions = ["mediaPipe"] productFlavors { noMediaPipe { dimension "mediaPipe" } withMediaPipe { dimension "mediaPipe" } } // Ignore the withMediaPipe variant if the MediaPipe AAR is not present. if (!project.file("libs/edge_detector_mediapipe_aar.aar").exists()) { variantFilter { variant -> def names = variant.flavors*.name if (names.contains("withMediaPipe")) { setIgnore(true) } } } } dependencies { implementation 'androidx.core:core:' + androidxCoreVersion compileOnly 'org.checkerframework:checker-qual:' + checkerframeworkVersion implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion implementation 'androidx.appcompat:appcompat:' + androidxAppCompatVersion implementation 'androidx.constraintlayout:constraintlayout:' + androidxConstraintLayoutVersion implementation 'androidx.recyclerview:recyclerview:' + androidxRecyclerViewVersion implementation 'com.google.android.material:material:' + androidxMaterialVersion implementation project(modulePrefix + 'lib-effect') implementation project(modulePrefix + 'lib-exoplayer') implementation project(modulePrefix + 'lib-exoplayer-dash') implementation project(modulePrefix + 'lib-transformer') implementation project(modulePrefix + 'lib-muxer') implementation project(modulePrefix + 'lib-ui') // For MediaPipe and its dependencies: withMediaPipeImplementation fileTree(dir: 'libs', include: ['*.aar']) withMediaPipeImplementation 'com.google.flogger:flogger:latest.release' withMediaPipeImplementation 'com.google.flogger:flogger-system-backend:latest.release' withMediaPipeImplementation 'com.google.code.findbugs:jsr305:latest.release' withMediaPipeImplementation 'com.google.protobuf:protobuf-javalite:3.19.1' }