Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement Voice Recognition and phrase generation Feature to Turn Off Alarm #581

Open
jaivsh opened this issue Jul 31, 2024 · 4 comments
Open
Assignees

Comments

@jaivsh
Copy link

jaivsh commented Jul 31, 2024

Description

Description

Functionality Overview:

The Voice Recognition Challenge integrates with the alarm app, requiring users to say a specific phrase or answer a question correctly to turn off the alarm. This feature will use PocketSphinx, an open-source speech recognition system, to provide accurate and efficient voice recognition capabilities.

User Impact:

  • Hands-Free Convenience: Allowing users to stop the alarm with their voice offers a hands-free and intuitive method, especially beneficial for those who find it difficult to interact with their device immediately after waking up.
  • Customizable Phrases: Users can personalize their experience by setting custom phrases or questions, making the wake-up process more engaging and tailored to individual preferences.
  • Improved Accessibility: This feature enhances accessibility for users with physical disabilities, providing an easier method to deactivate the alarm without needing to physically interact with the device.
  • Cost-Effective Solution: Utilizing PocketSphinx ensures there are no additional costs for cloud-based API usage, making it a cost-effective enhancement to the app.

I want to work on this issue, so please consider assigning it to me.

The overall flow of the proposed functionality is as follows:

+-------------------------------+
| Start |
+-------------------------------+
|
v
+-------------------------------+
| Alarm Rings |
+-------------------------------+
|
v
+-------------------------------+
| User Speaks Custom Phrase |
+-------------------------------+
|
v
+-------------------------------+
| PocketSphinx Processes Voice |
+-------------------------------+
|
v
+-------------------------------+
| Phrase Recognized? |
+-----------------+-------------+
| Yes | No
v v
+-------------------------------+ +-------------------------------+
| Alarm Turns Off | | Prompt User to Try Again |
+-------------------------------+ +-------------------------------+

Screenshots

No response

@jaivsh jaivsh closed this as completed Aug 3, 2024
@jaivsh jaivsh reopened this Aug 3, 2024
@jaivsh
Copy link
Author

jaivsh commented Aug 3, 2024

@MarkisDev @AryanSarafDev please can you guys assign this task to me

@AryanSarafDev
Copy link
Collaborator

@jaivsh I’ve assigned this task to you! Have you already implemented it? If not, could you provide a brief summary of how you plan to execute the workflow you explained? This way, we can save time in case any adjustments are needed.

@AryanSarafDev
Copy link
Collaborator

Are you still working on this? @jaivsh

@jaivsh
Copy link
Author

jaivsh commented Nov 6, 2024

Hi @AryanSarafDev, sure! I was researching the existing codebase and have done the following till now:

  1. Used Google tts and used it for getting input from the user. It would automatically get triggered weather in background or inside the app activity class to note the user's voice.
  2. Creating a matching UI card for the voice recognition feature.
  3. Created a regix for matching if the string returned by the google tts library has certain words, like snooze, turn off, etc..
  4. Accordingly tts would ask to confirm.

Problem:
Till now i've done the following, but i am not able to change the default ISAR database, so that voiceEnabled(on/off) is not showing up in the database. I added this variable in the isar and alarm models. So i was dealing with the same. The screen remains stuck with a circular loading screen showing up continously, and the updated isar variable isnt seen anywhere if i print it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants