From 2a8352beac878153c6bb5e9af6eb5dae17c515db Mon Sep 17 00:00:00 2001 From: Eric Mikulin Date: Mon, 5 Feb 2024 15:07:16 -0800 Subject: [PATCH] Java RPI5 release (#352) --- .github/workflows/java-demos.yml | 2 +- .github/workflows/java-perf.yml | 5 ++++- .github/workflows/java.yml | 2 +- binding/java/README.md | 4 ++-- binding/java/build.gradle | 6 ++++-- binding/java/src/ai/picovoice/leopard/Utils.java | 3 +++ demo/java/build.gradle | 6 +++--- 7 files changed, 18 insertions(+), 10 deletions(-) diff --git a/.github/workflows/java-demos.yml b/.github/workflows/java-demos.yml index 217dd970..9bb79030 100644 --- a/.github/workflows/java-demos.yml +++ b/.github/workflows/java-demos.yml @@ -48,7 +48,7 @@ jobs: strategy: matrix: - machine: [rpi3-32, rpi3-64, rpi4-32, rpi4-64, jetson] + machine: [rpi3-32, rpi3-64, rpi4-32, rpi4-64, rpi5-64, jetson] steps: - uses: actions/checkout@v3 diff --git a/.github/workflows/java-perf.yml b/.github/workflows/java-perf.yml index ef5a02fd..3e277371 100644 --- a/.github/workflows/java-perf.yml +++ b/.github/workflows/java-perf.yml @@ -61,7 +61,7 @@ jobs: strategy: fail-fast: false matrix: - machine: [rpi3-32, rpi3-64, rpi4-32, rpi4-64, jetson] + machine: [rpi3-32, rpi3-64, rpi4-32, rpi4-64, rpi5-64, jetson] include: - machine: rpi3-32 init_performance_threshold_sec: 16.0 @@ -75,6 +75,9 @@ jobs: - machine: rpi4-64 init_performance_threshold_sec: 7.0 proc_performance_threshold_sec: 2.5 + - machine: rpi5-64 + init_performance_threshold_sec: 7.0 + proc_performance_threshold_sec: 2.5 - machine: jetson init_performance_threshold_sec: 7.0 proc_performance_threshold_sec: 2.6 diff --git a/.github/workflows/java.yml b/.github/workflows/java.yml index ea82c444..656f0df7 100644 --- a/.github/workflows/java.yml +++ b/.github/workflows/java.yml @@ -56,7 +56,7 @@ jobs: strategy: matrix: - machine: [rpi3-32, rpi3-64, rpi4-32, rpi4-64, jetson] + machine: [rpi3-32, rpi3-64, rpi4-32, rpi4-64, rpi5-64, jetson] steps: - uses: actions/checkout@v3 diff --git a/binding/java/README.md b/binding/java/README.md index 168c3870..1da20f8a 100644 --- a/binding/java/README.md +++ b/binding/java/README.md @@ -13,12 +13,12 @@ Leopard is an on-device speech-to-text engine. Leopard is: - Linux (x86_64), macOS (x86_64, arm64), and Windows (x86_64) - Android and iOS - Chrome, Safari, Firefox, and Edge - - Raspberry Pi (4, 3) and NVIDIA Jetson Nano + - Raspberry Pi (5, 4, 3) and NVIDIA Jetson Nano ## Compatibility - Java 11+ -- Runs on Linux (x86_64), macOS (x86_64, arm64), Windows (x86_64), Raspberry Pi (4, 3), and NVIDIA Jetson Nano. +- Runs on Linux (x86_64), macOS (x86_64, arm64), Windows (x86_64), Raspberry Pi (5, 4, 3), and NVIDIA Jetson Nano. ## Installation diff --git a/binding/java/build.gradle b/binding/java/build.gradle index f03ea017..9fec672c 100644 --- a/binding/java/build.gradle +++ b/binding/java/build.gradle @@ -7,7 +7,7 @@ plugins { ext { PUBLISH_GROUP_ID = 'ai.picovoice' - PUBLISH_VERSION = '2.0.1' + PUBLISH_VERSION = '2.0.2' PUBLISH_ARTIFACT_ID = 'leopard-java' } @@ -57,7 +57,9 @@ task copyRPiLib(type: Copy) { include('cortex-a53/libpv_leopard_jni.so', 'cortex-a53-aarch64/libpv_leopard_jni.so', 'cortex-a72/libpv_leopard_jni.so', - 'cortex-a72-aarch64/libpv_leopard_jni.so') + 'cortex-a72-aarch64/libpv_leopard_jni.so', + 'cortex-a76/libpv_leopard_jni.so', + 'cortex-a76-aarch64/libpv_leopard_jni.so') into("${outputDir}/leopard/lib/java/raspberry-pi/") } task copyJetsonLib(type: Copy) { diff --git a/binding/java/src/ai/picovoice/leopard/Utils.java b/binding/java/src/ai/picovoice/leopard/Utils.java index 50cdae2c..7366690f 100644 --- a/binding/java/src/ai/picovoice/leopard/Utils.java +++ b/binding/java/src/ai/picovoice/leopard/Utils.java @@ -135,6 +135,7 @@ public static String getEnvironmentName() throws RuntimeException { switch (cpuPart) { case "0xd03": case "0xd08": + case "0xd0b": return "raspberry-pi"; case "0xd07": return "jetson"; @@ -180,6 +181,8 @@ private static String getArchitecture() throws RuntimeException { return "cortex-a57" + archInfo; case "0xd08": return "cortex-a72" + archInfo; + case "0xd0b": + return "cortex-a76" + archInfo; default: throw new RuntimeException( String.format( diff --git a/demo/java/build.gradle b/demo/java/build.gradle index a5f466e3..f34ff3b9 100644 --- a/demo/java/build.gradle +++ b/demo/java/build.gradle @@ -15,14 +15,14 @@ sourceSets { } dependencies { - implementation 'ai.picovoice:leopard-java:2.0.1' + implementation 'ai.picovoice:leopard-java:2.0.2' implementation 'commons-cli:commons-cli:1.4' } jar { manifest { attributes "Main-Class": "ai.picovoice.leoparddemo.MicDemo", - "Class-Path": "leopard-2.0.1.jar;commons-cli-1.4.jar" + "Class-Path": "leopard-2.0.2.jar;commons-cli-1.4.jar" } from sourceSets.main.output exclude "**/FileDemo.class" @@ -33,7 +33,7 @@ jar { task fileDemoJar(type: Jar) { manifest { attributes "Main-Class": "ai.picovoice.leoparddemo.FileDemo", - "Class-Path": "leopard-2.0.1.jar;commons-cli-1.4.jar" + "Class-Path": "leopard-2.0.2.jar;commons-cli-1.4.jar" } from sourceSets.main.output exclude "**/MicDemo.class"