blob: c15aeed03a598f42d004b9df6a8d3b6dfe68e81b [file] [log] [blame]
Santiago Seifert05490c72019-11-07 18:00:08 +00001//
2// Copyright (C) 2019 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
Santiago Seifert8ade7bb2020-02-06 16:03:34 +000017// Exposes ExoPlayer classes required for implementing the MediaParser API.
Bob Badour55512382021-02-12 15:24:07 -080018package {
19 default_applicable_licenses: ["external_exoplayer_license"],
20}
21
22// Added automatically by a large-scale-change
23// See: http://go/android-license-faq
24license {
25 name: "external_exoplayer_license",
26 visibility: [":__subpackages__"],
27 license_kinds: [
28 "SPDX-license-identifier-Apache-2.0",
29 ],
30 license_text: [
31 "LICENSE",
32 ],
33}
34
Santiago Seifert3a09f972021-05-17 13:55:57 +010035java_library {
Santiago Seifertf24a2e32020-01-27 19:54:19 +000036 name: "exoplayer2-extractor",
Santiago Seifert98470182020-01-27 12:50:37 +000037 srcs: [
Santiago Seifert662958f2020-04-03 18:56:23 +010038 "tree/library/extractor/src/main/java/**/*.java",
39 "tree/library/common/src/main/java/**/*.java",
Santiago Seifert98470182020-01-27 12:50:37 +000040 ],
Anton Hanssonf6cc5bc2020-03-23 10:29:58 +000041 sdk_version: "29", // Needs to be a prebuilt, so not "current".
Jooyung Han90084be2020-05-21 22:35:38 +090042 apex_available: [
43 "com.android.media",
44 ],
45 min_sdk_version: "16", // match with tree/constants.gradle
Santiago Seifert05490c72019-11-07 18:00:08 +000046 static_libs: [
Santiago Seifertf24a2e32020-01-27 19:54:19 +000047 "exoplayer2-extractor-annotation-stubs",
Santiago Seifert05490c72019-11-07 18:00:08 +000048 "androidx.annotation_annotation",
Santiago Seifert9af80eb2020-04-09 23:10:01 +010049 "jsr305",
Santiago Seifert05490c72019-11-07 18:00:08 +000050 ],
Santiago Seifertf24a2e32020-01-27 19:54:19 +000051 jarjar_rules: "exoplayer2-extractor-jarjar-rules.txt",
Santiago Seifert48d630a2019-11-13 17:27:40 +000052 visibility: ["//frameworks/base:__subpackages__"],
Santiago Seifert9f6e0b42019-12-12 14:27:44 +000053 notice: "LICENSE",
Santiago Seifert05490c72019-11-07 18:00:08 +000054}
55
56// Compile dummy implementations of annotations used by exoplayer but not
57// present in the Android tree.
58java_library {
Santiago Seifertf24a2e32020-01-27 19:54:19 +000059 name: "exoplayer2-extractor-annotation-stubs",
Santiago Seifert05490c72019-11-07 18:00:08 +000060 host_supported: true,
61 sdk_version: "core_current",
Jooyung Han90084be2020-05-21 22:35:38 +090062 apex_available: [
63 "com.android.media",
64 ],
65 min_sdk_version: "16",
Santiago Seifert05490c72019-11-07 18:00:08 +000066 srcs: ["annotation-stubs/src/**/*.java"],
Santiago Seifert9af80eb2020-04-09 23:10:01 +010067 static_libs: ["jsr305"],
Santiago Seifert05490c72019-11-07 18:00:08 +000068 visibility: ["//visibility:private"],
69}
Santiago Seifert77bdf072020-01-30 16:49:04 +000070
Santiago Seifert8ade7bb2020-02-06 16:03:34 +000071// Exposes util classes for testing MediaParser.
72android_library {
73 name: "exoplayer2-extractor-test-utils",
Santiago Seifert662958f2020-04-03 18:56:23 +010074 manifest: "tree/library/extractor/src/test/AndroidManifest.xml",
Santiago Seifert8ade7bb2020-02-06 16:03:34 +000075 srcs: [
Santiago Seifert662958f2020-04-03 18:56:23 +010076 "tree/testutils/src/main/java/com/google/android/exoplayer2/testutil/Dumper.java",
77 "tree/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeExtractorInput.java",
78 "tree/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeExtractorOutput.java",
79 "tree/testutils/src/main/java/com/google/android/exoplayer2/testutil/FakeTrackOutput.java",
80 "tree/testutils/src/main/java/com/google/android/exoplayer2/testutil/TestUtil.java",
81 "tree/library/core/src/main/java/com/google/android/exoplayer2/database/DatabaseProvider.java",
82 "tree/library/core/src/main/java/com/google/android/exoplayer2/database/DefaultDatabaseProvider.java",
Santiago Seifert8ade7bb2020-02-06 16:03:34 +000083 ],
Anton Hanssonf6cc5bc2020-03-23 10:29:58 +000084 sdk_version: "29",
Santiago Seifert8ade7bb2020-02-06 16:03:34 +000085 static_libs: [
86 "exoplayer2-extractor",
87 "exoplayer2-extractor-annotation-stubs",
88 "androidx.annotation_annotation",
89 "truth-prebuilt",
90 "junit",
91 "androidx.test.core",
92 ],
93 jarjar_rules: "exoplayer2-extractor-jarjar-rules.txt",
94 visibility: ["//cts/tests/tests/mediaparser:__subpackages__"],
95 notice: "LICENSE",
96}
97
98// Exposes the assets for testing MediaParser.
99android_library {
Santiago Seifert77bdf072020-01-30 16:49:04 +0000100 name: "exoplayer2-extractor-tests-assets",
Santiago Seifert662958f2020-04-03 18:56:23 +0100101 manifest: "tree/library/extractor/src/main/AndroidManifest.xml",
Santiago Seifert77bdf072020-01-30 16:49:04 +0000102 srcs: [],
Anton Hanssonf6cc5bc2020-03-23 10:29:58 +0000103 sdk_version: "29",
Santiago Seifert77bdf072020-01-30 16:49:04 +0000104 visibility: ["//cts/tests/tests/mediaparser:__subpackages__"],
Santiago Seifert7ac484a2020-04-09 20:52:49 +0100105 asset_dirs: ["tree/testdata/src/test/assets/"],
Santiago Seifert77bdf072020-01-30 16:49:04 +0000106 // Do not compress media files.
107 aaptflags: [
108 "-0 .ac3",
109 "-0 .ac4",
110 "-0 .adts",
111 "-0 .amr",
112 "-0 .eac3",
113 "-0 .flac",
114 "-0 .flv",
115 "-0 .id3",
116 "-0 .mkv",
117 "-0 .mp3",
118 "-0 .mp4",
119 "-0 .mpg",
120 "-0 .ogg",
121 "-0 .opus",
122 "-0 .ps",
123 "-0 .rawcc",
124 "-0 .ts",
125 "-0 .wav",
126 "-0 .webm",
127 ],
128}