I am using movieStim3 to play videos in Psychopy and use getCurrentFrameTime() to record the time of each frame. My video's fps is 25 Hz so every frame will display for 0.04 seconds. I notice that there are always several flips of the screen that display frames with a frame time of -0.04. I am wondering if there is a way to extract that frame to see what has been displayed (whether it displays anything or just an empty frame. I have tried to use cv2 but I am not sure whether that extracted the right thing. This is the code I used to extract frame_id 0.
video = cv2.VideoCapture("name of the movie")
video.set(cv2.CAP_PROP_POS_FRAMES,0)
ret, frame = video.read()
cv2.imwrite("frame.png", frame)