| Reference | Downloads | Github

RSVP stream gets stuck in first couple of iterations of "trial loop"

Hello everyone,

Below are the details of an issue that I have encountered when trying to run a dual-stream rapid serial visual presentation (RSVP) task in the Builder.

OS (e.g. Win10): Win10
PsychoPy version (e.g. 1.84.x): v2021.1.4
What are you trying to achieve?:

I am trying to run a dual-stream RSVP task. I am aiming for the rapid stream of stimuli to look as follows:
The stream (routine called “stream_real” below) is made up of brief (50 ms) circles simultaneously appearing on the left and right of the screen (9-12 double circle appearances per stream). During the short intervals (ISIs) between each of two consecutive double circle appearances (minimum duration: 35 ms), two circular masks are presented in the same position as the left and right circles. I would like each of the double masks to be different and, consequently, I have 12 custom-made masks (.png files) that I load as Image components. Prior to the beginning of the stream (in a separate routine called “set_up” below), I have a long code component calculating the different parameters (stimulus appearance timings etc.). Also prior to the beginning of each stream, there is a coloured fixation cross and a delay. (I have tried to have these as separate routines or as the components within the same “stream_real” routine, but this doesn’t change the issue that I run into).


When running this task locally, the first 1-2 iterations of the trial loop do not work. It seems like the stream of stimuli gets “stuck” at one of the presented circular stimuli or masks and no other stimuli appears in the stream. Strangely, this is only the case in the first couple of iterations each of the “trialloop” below, but it is fine thereafter.

What did you try to make it work?:

I tried to make a version of this task where a left and right mask is constantly present for the duration of the stream, and the target circles appear over the mask. This version seems to work fine. I also had a version of this task running online (Pavlovia) which seemed worked fine. So, my intuition is that the problem has something to do with loading the mask .png files. I tried to load these .pngs during the “static” delay prior to the beginning of the stream, but this did not helpanything. Consequently, I am in the dark as to what might be going wrong…

Any help or advice would be highly appreciated and thank you in advance! :slight_smile:


You could test to see if it works when the mask image is constant.

Then you could try to update the mask image in code – though perhaps that’s what you meant by during the static period.

Thank you for your quick response!

If the mask image is constant, everything works. I will try to update the mask image in a code component now, thank you for the suggestion.