Kotlin audio telephony library for LXST voice calls over Reticulum. Extracted from Columba.
- audio/ — Full-duplex pipeline: mic capture, speaker playback, mixing, tone generation, packetization
- codec/ — JNI wrappers for Codec2 (narrowband) and Opus (wideband) with prebuilt
arm64-v8alibs - telephone/ — Call state machine, profile negotiation (8 quality profiles from 1200 bps to 48 kHz), mute/unmute
- core/ — Transport-agnostic coordination layer (CallCoordinator, PacketRouter, AudioDevice)
LXST-kt is consumed by Columba via Gradle composite build:
// columba/settings.gradle.kts
includeBuild("LXST-kt") {
dependencySubstitution {
substitute(module("tech.torlando:lxst")).using(project(":lxst"))
}
}./gradlew :lxst:compileDebugKotlin # compile
./gradlew :lxst:testDebugUnitTest # unit tests| Library | License | Link |
|---|---|---|
| Opus | BSD-3-Clause | opus-codec.org |
| Codec2 | LGPL-2.1 | github.com/drowe67/codec2 |
Prebuilt shared libraries (libopus.so, libcodec2.so) are dynamically linked. JNI wrappers are MIT.