Empezar — Android
speech-android proporciona procesamiento de voz en el dispositivo para Android usando ONNX Runtime. El pipeline ejecuta VAD + STT + TTS con soporte de barge-in, totalmente offline tras la descarga del modelo.
Requisitos
- Android 8+ (API 26)
- Arquitectura arm64-v8a
Descarga la aplicación de demostración preconstruida para probarla inmediatamente:
Dependencia de Gradle
Añade el SDK a tu build.gradle.kts:
implementation("audio.soniqo:speech:0.0.5")
Inicio rápido
val modelDir = ModelManager.ensureModels(context)
val pipeline = SpeechPipeline(SpeechConfig(modelDir = modelDir))
pipeline.events.collect { event ->
when (event) {
is SpeechEvent.TranscriptionCompleted -> println(event.text)
is SpeechEvent.ResponseDone -> pipeline.resumeListening()
else -> {}
}
}
pipeline.start()
pipeline.pushAudio(samples) // 16kHz mono float32
Importante
Los modelos se descargan automáticamente desde HuggingFace en el primer uso (~1.2 GB en total). Tras la descarga inicial, toda la inferencia se ejecuta totalmente offline.
Modelos
Todos los modelos se ejecutan vía ONNX Runtime con aceleración NNAPI. Cuantizados en INT8 por defecto.
| Modelo | Tarea | Tamaño |
|---|---|---|
| Parakeet TDT v3 (INT8) | Voz a texto (114 idiomas) | 490 MB |
| Kokoro-82M (INT8) | Texto a voz (7 idiomas) | 89 MB |
| Silero VAD v5 | Detección de actividad vocal | 1.2 MB |
| DeepFilterNet3 (FP16) | Cancelación de ruido | 4.2 MB |
Código fuente: github.com/soniqo/speech-android
Próximos pasos
- Benchmarks — rendimiento de inferencia en Android
- API C de Linux — configuración de Linux embebido