psychopy.org | Reference | Downloads | Github

Sound Pattern Experiment

OS: MacOS Mojave
PsychoPy version: 3.1.5
Standard Standalone?: y
What are you trying to achieve?:
I am building an experiment intended to test subjects’ ability to recognize auditory noise in a simple sound pattern.

In the preliminary experiment, subjects will hear one pattern, composed of six beats (N), followed by a second pattern with the same number of beats. Between each beat, there is a constant time interval (deltaT). One of the two patterns will contain a random amount of noise (sigma) on the deltaT time interval. Ultimately, the first pattern played will be random with respect to whether it contains noise or not, where either the first or the second pattern is the one that contains the noise.

In terms of the flow, we intend to have:

Pattern1a --> white noise --> Pattern1b --> white noise --> feedback

where the feedback asks the subject whether they heard the noise in the first pattern or the second pattern.

This is the preliminary experiment, meant to test our methods. In the near future we intend to have approximately 600 randomly generated patterns (300 unique patterns) where the variables N (number of beats), deltaT (time interval between beats), and sigma (noise added to final time interval) are varied. It would look like this:

Pattern1a --> white noise --> Pattern1b --> white noise --> feedback --> Pattern2a --> white noise --> Pattern2b --> white noise --> feedback --> …

What did you try to make it work?:

I created an excel conditions file that underlies the beat sound and the interval time. I have used the RAND and IF functions in excel to create the random nature of the variables in this experiment. This has allowed me to generate one trial with two patterns and feedback in the builder view. This trial is composed of one loop called “patterns,” which contains the routines “beat” followed by “interval.” Both patterns play within one repetition of the loop, due to the format of the excel file. Following the pattern1 loop, I have a feedback routine. I then have a loop over pattern1 and the feedback routine called “trial.”

Now here’s the issue. I can’t figure out how to add more trials of different patterns into the experiment, while maintaining the current loop structure. More specifically, I am able to introduce new patterns into the conditions file, following the first two patterns; however, when I do this, the newly added patterns are played immediately after the first two patterns, rather than after the first feedback routine.

I would really appreciate any assistance/ideas as to how I could follow my first two patterns+feedback by another set of patterns+feedback.

Here are the Psychopy file and the Excel conditions files:

Aug6_experimentX.psyexp (17.0 KB) Aug6_soundconditionsX.xlsx (40.4 KB)

Thank you and please let me know if I can clarify any of the information found in the files or in the message above!

If I understand your design correctly, I think you only want one loop, connected to a conditions file. All of the information for a given trial should be united within one row of that file, so you should have separate columns for the variables required to present the fist and the second sound. Currently your conditions file effectively has the information for a given trial spread across two rows. This also limits what you can do with randomisation of trials.

So the feedback routine needs to be inside the same trial loop as the routine(s) presenting the stimuli, and you need to have two sound stimuli, each connected to different columns in your conditions file (for their respective sound, duration, and volume fields).