I’m trying to use the builder in order to present visual stimuli using frames as unit. I’m not really familiar with using the builder with this fast presentation time.
I would like to present an image for 3 frames (target) and immediately after another image (mask) for 6 frames. My approach was to set the start with
frameN to 0 and the duration in frames to 3. Then the mask the start to 3 (because is the third frame counting from 0) and the duration for 6 frames. Like in the image below:
Is that the correct approach? because the
occurs after the
. I’m not able to understand why, seems a pretty straightforward frame counting.
OS : Win10
PsychoPy version: 2021.2.3
Standard Standalone?: yes
one way to check - add a code component use
print('anything') in the each frame tab - does the number of prints you get in a routine correspond to the number of frames you expected it to last for?
Thank you @Becca! I’ve simplified my example in order to check it. If I set the experiment as follows:
A single routine, the stimulus last for 1 frame and I print as you suggested I obtain:
I’ve repeated the routine for a lot of trials and is still running two frames for that routine. Is it normal?
is it set to Sync timing with screen refresh?
Best wishes Jens
OK that looks good then no? in your data output what is the “target.startT” and target.stopT" saved?
If I get correctly, I should have just one printed
frame given that my stimulus lasts for one frame right?
I think the reason you’re getting two
frame values printed is that a Code component puts its code before all the stimuli are drawn - meaning the frame loop iterates over the bit where your print statement is, but as the frame number is now 1 it doesn’t draw the stimulus - so you’re getting two prints, but only 1 frame of stimulus being drawn, as intended.