Expected duration, rather than duration (frames), is setting stimulus timing

OS: Windows 10
PsychoPy version: 2021.2.3
Standard Standalone? (y/n) Yes

I’m running into a problem where PsychoPy seems to be using the “expected duration,” instead of the specified duration in frames, to set the timing of a text component. (I’m working on this experiment in the Builder.)

In my experiment, a stimulus is supposed to be shown for just 3 frames (50 ms on my 60Hz monitor). So I set “duration (frames)” to 3 and entered .05 for “expected duration”.

However, for testing purposes, I then changed the duration (in frames) to 60 in order to see the text clearly for 1 sec (without changing expected duration). But the text still just flashed briefly, for much less than 1 sec. When I subsequently erased the “expected duration” field, the stimulus showed properly for what seemed like 1 sec.

I then created a second program from scratch, with a single text component for which duration (frames) and expected duration are set inconsistently. Again, expected duration seems to determine the timing.

My concern is that, in the real experiment, when setting duration (frames) to 3 and expected duration to .05, I’m no longer confident that duration (frames) is driving the timing. Though these times should in principle be the same, I imagine expected duration may be less precise than duration (frames).

Of course, I can get the timing right by simply leaving expected duration blank. But I’d like to be able to include expected durations if I can. If you’ve encountered a similar problem, or have any suggestions, please let me know. Thanks!

Hi @ss22 , I’ve reported this issue to the PsychoPy team - see Github issue.