OS (e.g. Win10): Mac 10.12.6
PsychoPy version (e.g. 1.84.x): 3.2.4
Standard Standalone? (y/n) y
What are you trying to achieve?:
The short version: I am trying to get an fMRI experiment to work that involves presenting 16 second videos to participants. These videos play very slowly (about 22s to complete). Even integrating a 16s static preloading period does not improve playback at all.
The detailed version: For debugging purposes, I have created a very simple builder file that involves presentation of a single movie file (.mp4, H.264 (x264), 640 x 480, 30 fps) that is 16s long. Using the moviepy backend, no audio. Presentation involves duplication (mirroring) of my stimulus computer monitor to an additional display. Both my stimulus computer and the additional display have refresh rates of 60Hz. The additional display has a resolution of [3840, 2160].
Here is a screencap of my general setup:
What did you try to make it work?:
Running movie in full screen (no adjustments or preload): 22.2317s
Things that don’t (really) help
Running movie in full screen (movie file set during trial.ISI of 1s): 22.3354s
Running movie in full screen (movie file set during trial.ISI of 16s): 22.1464
Recoding the movie to 60fps: 21.9505s
Setting movie size in movie to [320,240]: 21.6848s
Things that help but don’t fully solve the problem
Running the movie NOT in full screen (no preload) with a Window Size of [2560, 1440]: 18.0263 s
Running the movie NOT in full screen (no preload) with a Window Size of [1024, 768]: 16.3167s
Running the movie NOT in full screen (no preload) with a Window Size of [800, 600]: 16.283s
It appears thus far that the Window Size (not the movie display size, just the size of the window in which the experiment displays) is the culprit, as moving out of full screen and reducing window size helps substantially. What I don’t understand is: why? (The basically empty background window doesn’t seem like it would take up major computing power). I also don’t understand why preloading appears to have no effect on movie playback.
Unfortunately, I need to be able to display the experiment in full screen in order to fully control visual stimuli to which the participant is exposed. Does anyone have any thoughts about how to solve this?
I also repeatedly receive the following message in the console:
“INFO Filtering versions of PsychoPy only compatible with Python 3.
INFO wx version: 4.0.4. Filtering versions of PsychoPy only compatible with wx >= version 4.0”.
I am not sure if this is relevant.