3115: Stimulus duration is not possible on a standard monitor refresh


If using a 60Hz or 100Hz monitor, then for accurate presentation of visual stimuli, components must be presented in valid multiples of screen refresh for 60 Hz or 100 Hz.


When presenting stimuli at, say, 60 Hz you stimulus can be presented for 1 frame (1/60 s = 16.667 ms), 2 frames (2/60 s = 33.333 ms) but not for intervening periods (20 ms is not possible because the stimulus would have to be presented for a little more than 1 frame, which isn’t physically possible on standard fixed-framerate monitors.

PsychoPy versions affected

All versions.


We recommend for brief stimuli that you simply specify your stimulus duration in terms of the number of frames it should be presented (e.g. 1, 2, 3, for 16.7, 33.3 and 50 ms respectively). That reminds you of what is possible and means that PsychoPy won’t have to guess about what to do when the desired duration isn’t achievable.

If you need stimuli to be presented for briefer durations than 16.7 ms then you should look into high-frame-rate displays (100, 120 and 144 Hz displays are all available). There are also now vraiable-frame-rate monitors that can vary the duration of each frame within limits. If you are already using a high- or variable-rate monitor then this alert may not be relevant to you.

Back to top