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

Make TTS driver and speed adjustable from settings #5

Open
fcnjd opened this issue Oct 3, 2024 · 4 comments
Open

Make TTS driver and speed adjustable from settings #5

fcnjd opened this issue Oct 3, 2024 · 4 comments

Comments

@fcnjd
Copy link
Contributor

fcnjd commented Oct 3, 2024

Hi,
while navigating the UI, both the screenreader and Walkersguide will call the TTS service. If they're using the same (which at the moment is the only possible option), they may get in conflict. Example: The user navigates, while Talkback focuses on the decreasing distance to the next route point. Walkersguide announcements can thereby get ommitted.
Solutions: TTS driver can be selected from the app settings. Therefore, if a user has more than one driver installed (which is recommended for that use case), they don't get in the way of each other. For higher flexibility, speed should also be changeable.

@scheibler
Copy link
Owner

TTS driver can be selected from the app settings. Therefore, if a user has more than one
driver installed (which is recommended for that use case), they don't get in the way of each other.

That's not possible. Talkback always takes presents over anything an app pushes to the tts engine,
regardless if you use the same tts engine or not - At least as long as you move around with your
finger and do something.

And that's a good thing too because otherwise you would end up with two tts overlapping each other
and you couldn't control the one from the app.

Yes you might miss a navigation clue from the app but since you're currently using the app anyway
that should not be such an issue at all.

For higher flexibility, speed should also be changeable.

Yes, I could implement that but the idea was that WalkersGuide uses the same tts settings for
announcements as Talkback does. Therefore the speed and all other parameters already should be set to the
users liking.

@fcnjd
Copy link
Contributor Author

fcnjd commented Oct 4, 2024

OK, now I got your idea of using the same TTS engine and preferences as Talkback does. However, maybe we could reconsider this:
Talkback not necessarily only interrupts speech while using the app. If focus is on an auto-updating element (such as a distance indicator), or get's placed there by accident, Talkback takes precedence. Another case: Notifications of other apps make Talkback speak, grabbing the TTS away from Walkersguide. And once a clue is spoken, it won't be repeated. From my perspective, those interruptions aren't that unlikely. That's why the Lazarillo app explicitly asks you to choose a second TTS (if you have one) to prevent Talkback getting in the way - and if you don't have one, they manage to repeat a voice message if it was interrupted. So it is indeed possible. Please don't get me wrong, I prefer using Walkersguide because of many reasons, including UI and route navigation - but in this case I think they did a good way of implementing the TTS.

@fcnjd
Copy link
Contributor Author

fcnjd commented Oct 6, 2024

Another point: Talkbac can't be kept from speaking since the display has to keep active for the TTS to play. However it can be interrupted and resumed when needed, by using the 2 finger gesture or getting close to the prximity. The navigation clues don't have those options, so they should take priority. I can try to look into the code and add the settings for variable TTS driver and speed - in the hope that I'll understand the structure.

scheibler pushed a commit that referenced this issue Nov 18, 2024
    - Speech rate can be adjusted in the apps settings
    - Message queue implemented, prevent navigation instruction interrupts  (#6)
    - Announce bearing updates to the next route point in addition to the continuous distance updates while navigating
    - Fixed a bug where Talkback took presents over the distance and bearing announcements from the
      apps tts and interrupted them frequently (#5)

Other:
    - Added additional tasks in the start tab
    - Auto-resolve the current coordinates to their closest address when they are used as start point of a route calculation
    - Additional talkback actions have been added to the location button in the tool bar.
    - Fixed a bug in the tab bar below the tool bar: Sometimes the tabs in there got multiplied
@scheibler
Copy link
Owner

Please see #6 for updates.

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