/All-Ears_Android

Android Client Codes for 'All Ears'

Primary LanguageKotlin

✅ How to run

1) Prerequisites

Client of "All Ears" is a WearOS application and requires the following dependencies. Make sure to have the correct dependencies for the project.

  • java version: 8
  • kotlin version: 1.7.20
  • gradle version: 8.2
  • android: Hedgehog | 2023.1.1 Patch 1
  • complie SDK version: API 34
  • Android Studio

2) Clone

Clone this repository to your local computer using:

https://github.com/TeamAllways-AllEars/All-Ears_Android.git

3) GCP resource

Client of "All Ears" uses the GCP STT API for Live Captioning. Please create a Service account for STT in GCP and apply the JSON key file in your project.

allears-architecture-android

Client of "All Ears" uses the GCP STT API for Live Captioning. To run this code with your GCP resource, make sure to apply your API key for the GCP STT API Service account in the app/src/main/res/raw/credential_allwaysallears.json file (❗Do not change the directory or file name❗). Please create a Service account for STT in GCP and apply the JSON key file in your project. The format of your JSON API key file should look like this:

{
  "type": "service_account",
  "project_id": "...",
  "private_key_id": "...",
  "private_key": "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----\n",
  "client_email": "...",
  "client_id": "...",
  "auth_uri": "...",
  "token_uri": "...",
  "auth_provider_x509_cert_url": "...",
  "client_x509_cert_url": "...",
  "universe_domain": "..."
}

You also need to provide the base url for your SpringBoot backend server in app/src/main/java/gdsc/allways/allears/presentation/subtitles/SubtitleService.kt file. Make GCP VM for backend server, attach static external IP to the VM instance(refer to All-Ears_Server repository), and provide the info of static external IP to the BASE_URL val in SubtitleService.kt file.

private const val BASE_URL = "http://<static external IP>:8080"

⌚ Device

"All Ears" was tested on the Galaxy Watch 4, which has an ARM Mali-G68 MP2 667 MHz GPU. If you are planning to run this code on a device, make sure your edgy device has the same or higher GPU specs.

  • Galaxy watch 4 (44mm)
  • ARM Mali-G68 MP2 667 MHz GPU

⚙️ Architecture

Wear OS Tensorflow Lite GCP STT
allears-architecture-android