When splitting a video according to the timestamp in CVS, there will always be an extra frame at the beginning of the video and an extra frame at the end of the video. Especially long videos are basically all like this. If you cut the video from 100-200 frames, won't there be a problem of more cuts in the video and less in the video?
You can save the cvs file in the form of frame number and frame rate, and then let ffmpeg cut it according to the frame number.