Hi,
I am currently trying to get screenshots of the frames of a movie component (a 30s mp4 video). I would like to record a mp4 video of what happens in the screen, but I’m having some problems:
In the mp4 file video properties I can see that it has 30fps, so I would expect 900 frames shown in total by Psychopy. But, if I write print(frameN) in the Each Frame* section of the code component, the output is 1799.
In the code component, I tried to use win.getMovieFrame() in Each frame, and win.saveMovieFrames(“video.mp4”) in End Routine to create a video of the screen, but the video generated lasts more than 30s (33s), and it is composed by only 1023 frames (print(frameN) in the Each Frame* outputs 1023).
In addition, I tried to use win.getMovieFrame() and win.saveMovieFrames(“long”+ str(frameN) + “.png”) in Each Frame*, in order to save as an image file a screenshot of every frame. In this case, if I write print(frameN) in the Each Frame code section while creating the video, only 905 images are created.
Moreover, in the outputs there is written:
“6.5824 WARNING Multiple dropped frames have occurred - I’ll stop bothering you about them!”
That is the code. I would like the video stimulus position to change every 2s. Here two lists of random values are generated, one for the x and another for the y position values. Given that the video lasts 30s and it has 1799 frames, I multiplied 15 random numbers generated in the for loop 120 times. In this way, for 120 frames (about 2s) the positions should remain the same.

and in End routine I have written: win.saveMovieFrames(“video.mp4”)
What could be the problem?
(I don’t know if it may have something to do with it, but I’m trying to do this from my laptop, so I don’t have a very efficient graphic card)
Thank you in advance!!