Premiers pas — Android
speech-android fournit un traitement vocal embarqué pour Android via ONNX Runtime. Le pipeline exécute VAD + STT + TTS avec support du barge-in, entièrement hors ligne après le téléchargement des modèles.
Prérequis
- Android 8+ (API 26)
- Architecture arm64-v8a
Téléchargez l'application de démonstration pré-compilée pour l'essayer immédiatement :
Dépendance Gradle
Ajoutez le SDK à votre build.gradle.kts :
implementation("audio.soniqo:speech:0.0.5")
Démarrage rapide
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) // float32 mono 16 kHz
Important
Les modèles se téléchargent automatiquement depuis HuggingFace à la première utilisation (~1,2 Go au total). Après le téléchargement initial, toute l'inférence s'exécute entièrement hors ligne.
Modèles
Tous les modèles s'exécutent via ONNX Runtime avec accélération NNAPI. Quantifié INT8 par défaut.
| Modèle | Tâche | Taille |
|---|---|---|
| Parakeet TDT v3 (INT8) | Parole vers texte (114 langues) | 490 Mo |
| Kokoro-82M (INT8) | Texte vers parole (7 langues) | 89 Mo |
| Silero VAD v5 | Détection d'activité vocale | 1,2 Mo |
| DeepFilterNet3 (FP16) | Suppression de bruit | 4,2 Mo |
Code source : github.com/soniqo/speech-android
Prochaines étapes
- Benchmarks — performance d'inférence Android
- API C Linux — configuration Linux embarqué