that depends on whether the pi camera produces frames at a fixed frame rate or not.
if it does, the time you see is merely idle time until the next frame is actually produced.
to assess this, you’d determine the time for a complete loop. take the time in one place in the code, say between cam.capture
and returning from take_picture
, and check the difference. if that time is somewhat stable and consistent with a fixed frame rate, say 1/30 seconds… you have your answer.
cam.capture
itself may take time, which you can only assess if there’s buffering, and if you delay before the call, so there’d be a full frame buffered already, so you don’t have to wait for the camera itself to finish exposing the frame first.