osmandapp / OsmAnd

OsmAnd
https://osmand.net
Other
4.66k stars 1.02k forks source link

No sound on speed limit warning #21019

Closed Matombo closed 2 days ago

Matombo commented 3 weeks ago

Description

If I go over the speed limit, I get a visual warning, but no sound is playing.

Steps to reproduce

Make sure voice promt -> speedlimit is active.

Go over speed limit.

Actual result

No sound is playing.

Expected result

OSMand warns me about the speed limit.

Your Environment (required)

WARNING Crash-Logs MAY contain information you deem sensitive. Review this CAREFULLY before posting your issue!

OsmAnd Version: 4.8.6
Android/iOS version: 13
Device model: Fairphone 3 with /e/OS
Crash-Logs: ?
yuriiurshuliak commented 2 weeks ago

The bug has been reproduced. To reproduce it, select point-to-point navigation using the car profile, then enable voice prompts for speeding. Go to Menu → Configure profile → Navigation settings → Voice prompts → Speed Limit → Announce when exceeded, and set the speed limit tolerance to 5 km. Next, enable navigation simulation in Fast preview mode and start the navigation.

In most cases, when exceeding the speed limit by more than 5 km, the voice prompt did not activate. However, the prompt did work once when exceeding 100 km/h in a 50 km/h zone, as shown in the fourth video.

OsmAnd~ 4.9.0#3416m, released: 2024-10-11

nazar-kutz commented 3 days ago

It seems like the issue lies in the timing constraints for activating the speeding alert.

Under the current conditions, we have to wait at least 10 seconds from the moment a speeding is detected until the audio alert is played. Additionally, there is a 120-second interval set between the current and the next permissible speeding alert. (current timing algorithm is here: https://github.com/osmandapp/Osmand/blob/3f2ee137710da03dd6d5bcec37fc7e8dca589652/OsmAnd/src/net/osmand/plus/routing/VoiceRouter.java#L364)

These constraints seem to be the reason why speeding notifications are so infrequent. We should determine how to adjust these parameters to meet our expectations for the application's performance.

Matombo commented 3 days ago

Imho if speed limit + threshold is exeded it should immediatly play a sound/warning. That is the way it works on every other navigation system/app I ever used.

On that note: Other navigation systems don't repeat the warning until you go under the speed limit and then over it again.

Matombo commented 2 days ago

thanks for fixing it.

just one thing: can the warning be instant instead of waiting 5 seconds? speed cameras don't wait ...

or can it be configurable?

Matombo commented 2 days ago

@nazar-kutz my quick an dirty approach at that function: https://github.com/osmandapp/OsmAnd/pull/21183