-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Labels
help wantedExtra attention is neededExtra attention is needed
Description
Description
Add Microsoft Azure Cognitive Services Speech-to-Text as a second STT backend.
The app will automatically detect the provider from the API key format (no user dropdown needed).
Why
- Gives players choice between Google and Azure
- Zero config for existing users
- Fully backwards compatible
Acceptance criteria
- Implement
elite.intel.ai.ears.EarsInterfacein new classAzureSTT - Must be singleton, zero DI – follow exact pattern of
GoogleSTT - Loaded dynamically via
elite.intel.ai.ApiFactoryusingelite.intel.ai.KeyDetector.detectProvider(apiKey, "STT") - Reuse or adopt existing RMS gate, VAD, and Audio Calibration logic (see from GoogleSTT)
- Use existing EventBusManager.register(this); / @subscribe pattern to listen to events
- Interrupt the STT procerssing when vocalization is in progress (See GoogleSTT / IsSpeakingEvent) and resume after vocalization ends.
- No Python, no JNI, no unsigned DLLs no native packages or libraries → pure Azure Java SDK only
- Fully works on Linux and Windows
- Project compiles and runs with
gradle - App runs from fat-jar
- Provide temporary key to project maintainer for testing.
Useful links
- Azure Speech SDK (Maven Central): https://central.sonatype.com/artifact/com.microsoft.cognitiveservices.speech/client-sdk
- Continuous recognition sample: https://github.com/Azure-Samples/cognitive-services-speech-sdk/blob/master/samples/java/jre/console/src/com/microsoft/cognitiveservices/speech/samples/console/SpeechRecognitionSamples.java
Difficulty: Medium (follow GoogleSTT pattern + async streams)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
help wantedExtra attention is neededExtra attention is needed