Primeiros passos — Android
O speech-android oferece processamento de fala no dispositivo para Android usando ONNX Runtime. O pipeline executa VAD + STT + TTS com suporte a barge-in, totalmente offline após o download do modelo.
Requisitos
- Android 8+ (API 26)
- arquitetura arm64-v8a
Baixe o aplicativo de demonstração pré-compilado para experimentar imediatamente:
Dependência Gradle
Adicione o SDK ao seu build.gradle.kts:
implementation("audio.soniqo:speech:0.0.5")
Início 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
Os modelos são baixados automaticamente do HuggingFace no primeiro uso (~1,2 GB no total). Após o download inicial, toda a inferência roda totalmente offline.
Modelos
Todos os modelos rodam via ONNX Runtime com aceleração NNAPI. Quantizados em INT8 por padrão.
| Modelo | Tarefa | Tamanho |
|---|---|---|
| Parakeet TDT v3 (INT8) | Fala para texto (114 idiomas) | 490 MB |
| Kokoro-82M (INT8) | Texto para fala (7 idiomas) | 89 MB |
| Silero VAD v5 | Detecção de atividade de voz | 1.2 MB |
| DeepFilterNet3 (FP16) | Cancelamento de ruído | 4.2 MB |
Código-fonte: github.com/soniqo/speech-android
Próximos passos
- Benchmarks — desempenho de inferência em Android
- API C para Linux — configuração para Linux embarcado