![]() ![]() However, the display may not actually appear on the monitor until some time later, typically until the start of the next refresh cycle (assuming that v-sync is enabled). Usually, when you send a command to show a new display, the computer will accept this command right away and put the to-be-shown display in a queue. However, v-sync does not change anything about the fact that a monitor does not refresh instantaneously and will therefore always, for some time, show both the old and the new display.Īnother important concept is that of 'blocking on the vertical retrace' or the 'blocking flip'. When v-sync is enabled, tearing is no longer visible, because the tear coincides with the upper edge of the monitor. This is called 'synchronization to the vertical refresh' or simply 'v-sync'. This is generally considered undesirable, and therefore a new display should be presented at the exact moment that the refresh cycle starts from the top. That is, the upper half of the monitor will show the old display, while the lower part will show the new display. If a new stimulus display is presented while the refresh cycle is halfway, you will observe 'tearing'. Video courtesy of Jarik den Hartog and the VU University Amsterdam technical support staff. A slow-motion video of the refresh cycle on CRT (center) and LCD/ TFT monitors. (Unless you present a flickering stimulus, of course.) Therefore, LCD and TFT monitors do not flicker. On LCD or TFT monitors (flatscreen, left and right) the refresh is a 'flood fill' from top to bottom. Therefore, only one pixel is lighted at a time, which is why CRT monitors flicker slightly. non-flatscreen, center) the refresh is a single pixel that traces across the monitor from left to right and top to bottom. In Video 1 you can see what a monitor refresh looks like in slow motion. The most common refresh rate is 60 Hz (= 16.67 ms refresh cycle), although monitors with much higher refresh rates are sometimes used for experimental systems. This means that a visual stimulus is always presented for a duration that is a multiple of 10 ms, and you will not be able to present a stimulus for, say, 5 or 37 ms. For example, if the refresh rate of your monitor is 100 Hz, the display is refreshed every 10 ms (1000 ms / 100 Hz). Understanding your monitorĬomputer monitors refresh periodically. When using Python inline code, you can make use of the fact that canvas.show() returns the display timestamp. Therefore, if you want the sketchpad target to be shown for 100 ms, followed by the sketchpad mask, you should verify that time_mask - time_target is indeed 100. The easiest way to do this is by checking the display timestamps reported by OpenSesame.Įvery sketchpad item has a variable called time_ that contains the timestamp of the last time that the sketchpad was shown. Therefore, in time-critical experiments you should always check whether the timing in your experiment is as intended. But this does not guarantee accurate timing in every specific experiment! For any number of reasons, many of which are described on this page, you may experience issues with timing. OpenSesame allows you to control your experimental timing very accurately. Important considerations for time-critical experiments Check your timing! The long answer is the rest of this page. Is OpenSesame capable of millisecond precision timing? PsychoPy benchmarks and timing-related information.Testing precision and accuracy of timing.Benchmark results and tips for testing your own system.Taking into account stimulus-preparation time/ the prepare-run structure. ![]() Important considerations for time-critical experiments.Is OpenSesame capable of millisecond precision timing?.Installing packages, plugins, and extensions.Looping and defining indepedent variables.Wisconsin Card Sorting Test (JavaScript).
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |