Skip to content

About

Experimental android app to record, transcribe and display audio of speech

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

501 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Cassini for Android

Cassini records audio and makes the transcript on your phone. It labels the speakers and can remember the voices of the people that you name. It keeps the audio and the timed words together in one .opus file. Any audio player plays this file, and other Cassini software reads the transcript in it. Speech recognition operates without a network connection after a one-time model download. The speech model is Parakeet Ultra by Moondream, a further-trained NVIDIA Parakeet TDT 0.6B v3 for 25 European languages.

Download the latest release · Changelog

Privacy

Cassini does all speech recognition and speaker analysis on the phone. It does not upload audio, transcripts or voiceprints. It has no accounts, no analytics and no advertising. The app uses the network only to download the models, and only after you agree. A voiceprint stays in the private storage of the app. Cassini never writes a voiceprint into a document or an export. PRIVACY.md gives the full privacy policy.

Requirements

  • Android 8.0 (API 26) or later, on a 64-bit ARM phone (arm64-v8a). The APK also has x86_64 for emulators.
  • About 1 GB of free storage for the models. The download is about 730 MB.
  • 4 GB of RAM is a good start. This is not a tested minimum.

Screenshots

These screenshots come from the Android emulator. The audio is a clip of the FLEURS data set (CC BY 4.0), and the names are test names.

Notes Read and listen Transcribing Name a speaker Settings
Light Notes, light theme Read and listen, light theme Transcribing, light theme Name a speaker, light theme Settings, light theme
Dark Notes, dark theme Read and listen, dark theme Transcribing, dark theme Name a speaker, dark theme Settings, dark theme

Build

git clone --recurse-submodules https://github.com/codemyriad/cassini-android
cd cassini-android
./scripts/setup.sh
./gradlew :app:assembleDebug

The build needs JDK 17 and the Android SDK. CONTRIBUTING.md gives the tools, the tests and the rules for a change.

Modules

:core    Pure Kotlin/JVM. The verbatim engine plus pure app rules (statuses, search,
         trash arithmetic, exports, speaker stats, model plan).
:data    Android library. Room catalogue, DataStore settings, file repositories.
:engine  Android library. Native wrappers (sherpa-onnx, libcassini_opus), MediaCodec
         decoder, microphone capture, TranscriptionJob, ModelInstaller, ProgressTracker.
:ui      Android library. Compose design system and stateless screens.
:app     Android application. AppGraph, ViewModels, navigation, services, notifications.
:bench   Experiments and calibration on a device (com.android.test).
         Never in CI.

app -> ui
app -> data -> core
app -> engine -> core
bench -(instruments)-> app

Documentation

The cassini-format repository gives the specification of the portable format. The desktop pipeline and the web viewer are in gocassini.

License

Cassini for Android is free software under the GPLv3. THIRD_PARTY_NOTICES.md gives the licenses and sources of the dependencies and the models. We developed Cassini with AI coding assistance.

About

Experimental android app to record, transcribe and display audio of speech

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages