-
Notifications
You must be signed in to change notification settings - Fork 6
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
Slider noises play continuously with iOS VO #142
Comments
I am testing on an iPad Air 2 iOS 12.2. After trying for ~12 minutes I haven't been able to see this happen. I will try on my iPad 2. |
I was just able to reproduce this, but I am not sure how yet. I moved the voltage slider up to 5.5V then opened the PhET menu and heard continuous sound. |
Now it is happening every single time! |
OK, I figured out how to make this happen consistently. If the PhET menu is clicked before the CurrentSoundGenerator has a chance to set fadeCountdownTimer to Number.NEGATIVE_INFINITY, the problem doesn't happen. But if it is clicked after that, the problem occurs. That means as long as you wait ~5 seconds to click the PhET menu the problem will happen every time (on fresh reload). |
I suspect this is happening due to the way scenery "enables" sound on the first pointer event and how CurrentSoundGenerator fades out sound, but I am not certain how it all works. |
So this is not related to the PhET menu, but the activation of Sound. I can also reproduce by moving a slider, waiting 5 seconds, then double tapping the sim. The double tap sends a pointer event to the sim which enables sound. |
Nice detective work, @jessegreenberg. |
I created the above two issues to investigate this further in tambo, a solution will be explored there, possibly with scenery changes as well. |
I'm able to duplicate this on the PhET iPad "Pauling" consistently. It's running iOS version 11.4.1. One thing that I noticed that doesn't seem to be noted above is that sound is not playing at all prior to the time that this occurs, so that would seem to lend credence to @jessegreenberg's observation in one of the comments above where he says that this problem is likely due to the activation of sound. |
The problem is that Voice Over is intercepting touch events, and the code in I don't know if this is a reasonable thing to do. I spoke with @jonathanolson over Slack on the topic, and he had some thoughts, so I'm going to assign this to him so that he can record them and help me figure out what to try next. |
That seems reasonable to me. |
…arted on iOS when VoiceOver is in use, see phetsims/ohms-law#142
…arted on iOS when VoiceOver is in use, see phetsims/ohms-law#142
Thanks @jonathanolson. I've implemented the fix on master. It involves commits to both tambo and scenery, so branches with the needed changes will be needed to be pulled into the Ohm's Law release branch. Assigning to @jessegreenberg for that, since there may be other changes that he needs to pick up. |
For the record, and in case I ever need to look at this again, I did do some investigation of why this was happening when the volume should have been at zero. The summary is this: In this particular browser, setting output levels on gain nodes while the audio context is suspended doesn't seem to work. So, the |
…arted on iOS when VoiceOver is in use, see phetsims/ohms-law#142
…arted on iOS when VoiceOver is in use, see phetsims/ohms-law#142
Excellent, thanks @jbphet, branches created in scenery and tambo, dependencies.json updated. |
I also tested to verify this was fixed with iOS 12 VoiceOver + Safari. |
This issue seems solved in 1.4.0-rc.3 |
Device
iPad (2018)
iOS
12.2
Browser
Safari
Problem Description
For phetsims/qa#313
When opening the PhET menu it is possible for the slider sounds to play continuously
Steps to reproduce
Screenshots
https://drive.google.com/file/d/1YLSejrYu5GfiArUCjDYijp970P8r5T44/view?usp=sharing
The text was updated successfully, but these errors were encountered: