Skip to content

Commit 3fda767

Browse files
wangtztflite-support-robot
authored andcommitted
Add a build target for generating the aar package for AudioTask library.
PiperOrigin-RevId: 370311066
1 parent 5a8c6ab commit 3fda767

File tree

6 files changed

+72
-13
lines changed

6 files changed

+72
-13
lines changed

tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/audio/BUILD

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
load("@org_tensorflow//tensorflow/lite/java:aar_with_jni.bzl", "aar_with_jni")
2+
load("@build_bazel_rules_android//android:rules.bzl", "android_library")
3+
14
package(
25
default_visibility = ["//tensorflow_lite_support:users"],
36
licenses = ["notice"], # Apache 2.0
@@ -6,3 +9,30 @@ package(
69
exports_files([
710
"AndroidManifest.xml",
811
])
12+
13+
android_library(
14+
name = "task_library_audio",
15+
srcs = [
16+
"//tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/audio/classifier:audio_classifier_src",
17+
],
18+
# TODO(b/163039980): Use JAVACOPTS in TF. "-Xep:RemoveUnusedImports:ERROR" wierdly break the build.
19+
javacopts = ["-source 7 -target 7"],
20+
manifest = "AndroidManifest.xml",
21+
visibility = ["//visibility:public"],
22+
deps = [
23+
"//tensorflow_lite_support/java:tensorflowlite_support_java",
24+
"//tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/core:base_task_api",
25+
"//tensorflow_lite_support/java/src/native/task/audio:task_audio_native",
26+
"@com_google_auto_value",
27+
"@org_tensorflow//tensorflow/lite/java:tensorflowlite_java",
28+
],
29+
)
30+
31+
# AAR target for OSS release.
32+
#
33+
# bazel build -c opt --config=monolithic --config=android_arm64 --fat_apk_cpu=x86,x86_64,arm64-v8a,armeabi-v7a \
34+
# tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/audio:task-library-audio
35+
aar_with_jni(
36+
name = "task-library-audio",
37+
android_library = ":task_library_audio",
38+
)
Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
load("@build_bazel_rules_android//android:rules.bzl", "android_library")
22
load("@org_tensorflow//tensorflow/java:build_defs.bzl", "JAVACOPTS")
3-
load("@org_tensorflow//tensorflow/lite/java:aar_with_jni.bzl", "aar_with_jni")
43

54
package(
65
default_visibility = ["//tensorflow_lite_support:users"],
76
licenses = ["notice"], # Apache 2.0
87
)
98

9+
filegroup(
10+
name = "audio_classifier_src",
11+
srcs = glob(["**/*.java"]),
12+
)
13+
1014
# Default target that uses BuiltInOpResolver, registers all built-in OPs.
1115
android_library(
1216
name = "audio_classifier",
@@ -22,7 +26,7 @@ android_library(
2226
# OPs and/or a subset of BuiltInOps to reduce binary size.
2327
android_library(
2428
name = "audio_classifier_java",
25-
srcs = glob(["*.java"]),
29+
srcs = [":audio_classifier_src"],
2630
javacopts = JAVACOPTS,
2731
manifest = "//tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/audio:AndroidManifest.xml",
2832
deps = [
@@ -32,12 +36,3 @@ android_library(
3236
"@org_tensorflow//tensorflow/lite/java:tensorflowlite_java",
3337
],
3438
)
35-
36-
# AAR target for OSS release.
37-
#
38-
# bazel build -c opt --config=monolithic --config=android_arm64 --fat_apk_cpu=x86,x86_64,arm64-v8a,armeabi-v7a \
39-
# tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/audio/classifier:audio-classifier
40-
aar_with_jni(
41-
name = "audio-classifier",
42-
android_library = ":audio_classifier",
43-
)
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
load("@org_tensorflow//tensorflow/lite:build_def.bzl", "tflite_jni_binary")
2+
3+
package(
4+
default_visibility = ["//tensorflow_lite_support:users"],
5+
licenses = ["notice"], # Apache 2.0
6+
)
7+
8+
cc_library(
9+
name = "task_audio_native",
10+
srcs = [
11+
":libtask_audio_jni.so",
12+
],
13+
)
14+
15+
tflite_jni_binary(
16+
name = "libtask_audio_jni.so",
17+
srcs = [
18+
"//tensorflow_lite_support/java/src/native/task/audio/classifier:audio_classifier_jni.cc",
19+
],
20+
linkscript = "//tensorflow_lite_support/java:default_version_script.lds",
21+
deps = [
22+
"//tensorflow_lite_support/cc/port:statusor",
23+
"//tensorflow_lite_support/cc/task/audio:audio_classifier",
24+
"//tensorflow_lite_support/cc/task/audio/core:audio_buffer",
25+
"//tensorflow_lite_support/cc/task/audio/proto:audio_classifier_options_cc_proto",
26+
"//tensorflow_lite_support/cc/task/audio/proto:class_proto_inc",
27+
"//tensorflow_lite_support/cc/task/audio/proto:classifications_proto_inc",
28+
"//tensorflow_lite_support/cc/utils:jni_utils",
29+
"//tensorflow_lite_support/java/jni",
30+
],
31+
)

tensorflow_lite_support/java/src/native/task/audio/classifier/BUILD

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ package(
55
licenses = ["notice"], # Apache 2.0
66
)
77

8+
exports_files(["audio_classifier_jni.cc"])
9+
810
cc_library(
911
name = "audio_classifier_native",
1012
srcs = [

tensorflow_lite_support/java/src/native/task/audio/classifier/audio_classifier_jni.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ limitations under the License.
2121
#include "tensorflow_lite_support/cc/port/statusor.h"
2222
#include "tensorflow_lite_support/cc/task/audio/audio_classifier.h"
2323
#include "tensorflow_lite_support/cc/task/audio/core/audio_buffer.h"
24-
#include "tensorflow_lite_support/cc/task/audio/proto/audio_classifier_options.proto.h"
24+
#include "tensorflow_lite_support/cc/task/audio/proto/audio_classifier_options.pb.h"
2525
#include "tensorflow_lite_support/cc/task/audio/proto/class_proto_inc.h"
2626
#include "tensorflow_lite_support/cc/task/audio/proto/classifications_proto_inc.h"
2727
#include "tensorflow_lite_support/cc/utils/jni_utils.h"

tensorflow_lite_support/tools/ci_build/build_all.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,8 @@ bazel build -c opt --config=monolithic \
3434
--config=android_arm64 --fat_apk_cpu=x86,x86_64,arm64-v8a,armeabi-v7a \
3535
//tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/core:base-task-api.aar \
3636
//tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/text:task-library-text \
37-
//tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/vision:task-library-vision
37+
//tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/vision:task-library-vision \
38+
//tensorflow_lite_support/java/src/java/org/tensorflow/lite/task/audio:task-library-audio
3839

3940
# Build Coral plugin
4041
bazel build --sandbox_debug --subcommands --define=darwinn_portable=1 \

0 commit comments

Comments
 (0)