Closed nelson-barnett closed 2 months ago
DETAILS:
Currently, experiments are made of a stimulus generation algorithm "stimgen_type" and its settings. This is good for running patients who have tinnitus, where they can reference their own tinnitus when determining whether to answer yes/no to a stimulus. For lots of validation reasons, we want to make this is functional with people who do not have tinnitus. They need a "target sound" against which to compare each stimulus, the same way someone with the condition does. The way we implement this in practice is to play the same "target sound" before every stimulus.
What needs to be done:
Experiment
needs to hold a "target_sound" parameter.Experiment
in the browser. Since the options won't change, this should be a preset list.Experiment
has a target sound, that sound must be played before every stimulus (separated by a small pause) during the protocol.
I think that's it.
what should the UI look like to create AX experiment. Should we just add a field to the like this?
and how do we differentiate the normal Experiment which is currently supported from the AX experiments while creating the experiment?
Yes, just a field like that is exactly what I was thinking. I figured it could be left empty if it was a "regular" experiment. Otherwise maybe a button to toggle on/off the target sound field? Which do you think would feel better?
I think the latter one seems a good option with the toggle.
current update:
Good stuff!
Regarding the duration of the stimuli, every stimulus generation type in TinnitusReconstructor.jl has a duration
field. I believe that is currently present when making an Experiment on the website. So, nothing needs to change there. One thing I did notice, which I can change, is that there's no validation for the duration field. Meaning someone could put in -5 seconds. That should be checked in TinnitusReconstructor.jl.
For the target sound, maybe just add a target_duration
field to Experiment and have that be presented as an option when making one on the website. The value can default to the duration
value of the stimulus generation struct. It should be validated against 0 < target_duration <= 1
.
Add support for building and running experiments with a target sound.