phetsims / wave-interference

"Wave Interference" is an educational simulation in HTML5, by PhET Interactive Simulations.
MIT License
19 stars 5 forks source link

The wave detector probes should duck the speaker sound and the light sound effect #476

Closed samreid closed 4 years ago

samreid commented 4 years ago

From #465

Sound Screen: The probes should reduce the speaker sound by some amount, not as much as the "play tone" does. So it moves to the background a little more Should we do ducking on the light screen when the user drags the probes in? It seems less important in the light screen than in the sound screen. KP: But we should be consistent, let's duck the probe when the light sound effect is turned on. The sounds wired up to the checkbox take precedence.

KP: Let's get Wanda's input about the ducking levels. Will it be important to hear both at once? What should the relative levels be? Will Wanda use the Sound Effect frequency while using the probes?

emily-phet commented 4 years ago

@kathy-phet How do you want to proceed here? Do you want to meet with her and walk through the sim and ask for this feedback, or do you want to assign this to someone else?

samreid commented 4 years ago

I added ducking in the commit, it is ready for review.

samreid commented 4 years ago

The implementation worked out OK in this instance, but I can foresee that ducking may be necessary between seemingly unrelated pieces of code. If we plan to leverage ducking more and more, I wonder if there should be a tambo feature for that, like

new SoundClip(...,{applyDucking:{'wave-generator':0.25}})

The effect would be that the given SoundClip, when playing, would reduce the volume sounds categorized as 'wave-generator'. @jbphet have you considered something like this? Should we open a new tambo issue for it?

jbphet commented 4 years ago

@jbphet have you considered something like this?

Nope - this is the first time that the need has come up. I'm okay with creating an issue to consider the feature generally, but I would tend towards deferring it until the problem comes up in another sim. It sounds like the ducking was implemented successfully in this case, so unless it comes up more than an handful of times, I'd like to avoid the complexity of a general implementation, which would have to take into account things like multiple sounds trying to duck another, circular ducking setups, and ducking sounds that were already muted or turned down.

samreid commented 4 years ago

In today's meeting, we agreed this sounds good and can be closed. I'll open a tambo issue for this.