-
Notifications
You must be signed in to change notification settings - Fork 10
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 sound design #479
Comments
Here's a link to a prototype that was created a while back and is referenced in the sound design document. This link will probably not last forever: https://bayes.colorado.edu/dev/html/phet-io-wrapper-sonification/1.0.0-dev.113/phet-io-wrapper-sonification/balloons-and-static-electricity/html/balloons-and-static-electricity-sonification.html?sonificationFile=sonificationOptions&accessibility. |
A dev version with sound partially implemented has been published for us to use as a comparison point during future reviews. This one includes, among other things, the "slide whistle" sound for the balloon's drift motion and the more realistic grab and release sounds for the balloon. It also has sounds for move of the basic UI components. |
@Ashton-Morris: We're at the point where we need to finalize the sound files. In order to do this, I'll need
|
I have also modified the file names assuming that you'd prefer that. Here are the files.
|
These sound seem ok in dev.35. On Win 10 Chrome |
There have been a few potential sound issues (#533 and another incoming issue) so I don't want to close this yet. @Nancy-Salpepi https://docs.google.com/document/d/10YGIROBfW2u4DA6JAA6XZuP0mAmErsquIJjaZ_AB5sM/edit to describe the sounds in the sim, but I'm not sure if this is the document to look at for this issue. Can you clarify what should be looked for in this issue @jbphet? |
The sound design has gone through several reviews and has been approved. It's in the 1.5 release branch, and that branch is on its 2nd RC, and I expect it to go out soon. I think it's safe to close this issue now. |
Below is the checklist that will be used to guide the process of adding sound to this sim:
Checklist for Adding Sound
worked out that it becomes desirable to start prototyping. For an example, please see the Molecules and Light Sound
Design document. Done, see this link.
GitHub issue. Done (this is the issue).
releases made off of master before the sound implementation is complete. Generally you'll want to turn sound on, but in
cases where that isn't possible, skip the two sub-steps below, and the query parameters
supportsSound
andsupportsEnhancedSound
can be used to turn sound on for testing during development.soundSupported: true
key-value pair to thephet
sub-object in the package.jsonfile for this simulation. See https://github.com/phetsims/friction/blob/master/package.json.
enhancedSoundSupported: true
key-valuepair to the
phet
sub-object in the package.json file for this simulation. The main effect that this is has is to addthe 'Enhanced Sound' item to the PhET menu. See https://github.com/phetsims/friction/blob/master/package.json.
grunt update
to get the updated configuration into the HTML file.any. This is done by looking at the options and setting any sound players to
Playable.NO_SOUND
. Search through thecode base for example usages.
by creating a
Playable
(often aSoundClip
instance) and passing it in as an option for the sound player.ScreenView
files. Both approacheshave been used, and both are legit, and it probably depends on how much sound generation is needed and whether adding it
all to the
ScreenView
file(s) is likely to make the file too large and/or difficult to maintain. As of this writing,WavesScreenSoundView
is an example of a separate class where the sounds are hooked to the model, andFrictionScreenView
is an example of where sound was interwoven with the visual view code. Note that in some cases itis necessary to know what the user was doing that triggered the need for sound generation, and in these cases the sound
generation will need to be inside the view element so that the code has access to all the needed information. An
example where this often comes up is if different behavior is needed when a value was changed via keyboard interaction
versus mouse or touch interaction.
context. This has been found to be very useful when iterating on a sound design. There is more information on this in
the User Guide, and [an example in the Tambo demo]
(https://github.com/phetsims/tambo/blob/master/js/demo/SoundOptionsDialogContent.js).
general idea is to create sound generators and hook them up to the model and/or view elements that they are meant to
sonify, all based on the sound design document.
to be quite helpful for this. This is basically like the implementation process for all other portions of the sim, and
involves publishing dev versions, getting feedback, refining the sim, rinse, and repeat. One observation: It seems to
be more difficult for people to imagine how they will like a sound in context than a visual design element, so be
prepared for a lot of iteration, and use the 'Options' dialog if and when it can help.
sim and sets the volume level for all sim-specific sounds. Create a separate sub-issue for this. see Adjust relative sound levels #496
of all of the sound designers and other stakeholders in the original sound design GitHub issue and ask them to either
approve of the implementation or log their objections. Example:
Finalize the sound implementation molecules-and-light#233 (comment) see Sound design review #501
the
assets
directory. Make sure the names match, e.g.bonk.mp3
in thesounds
directory andbonk.wav
in theassets
directory.evaluation of sounds, remove said content
team
orother lists in the credits, add them using the
soundDesign
key.ready-for-testing
and have it tested with the otheraspects of the simulation through the publication process.
The text was updated successfully, but these errors were encountered: