You could use FFMPEG from the command line, or via a wrapper such as MoviePy to perform the actual splits, after using just about any video player that displays the time(s) to select when you would like to split. However, while you can specify a start time & duration to the millisecond, (using the format HH:MM:SS.sss for start time and duration), but the actual resolution that you can split your file will depend on the frame rate and the format.
If your original video file is a raw video file, (i.e. with no compression), with a 50Hz frame rate since there is one frame every 20 millisecond the resolution of splitting the file will be 20 milliseconds, (as you can only split at a whole frame).
However, if you are using a compressed format, such as MPEG-2/3/4, etc., your actual movie consists of key frames (with all of the information) and intermediate frames, (which rely on the data from the preceding key frame and possibly the intermediate frames since the last key frame. For the split file to be properly view-able it must start with a key frame and some compressed recordings only have a key frame as low as every 10 seconds.
See https://trac.ffmpeg.org/wiki/Seeking for a discussion of how to specify start and end/duration times.
FFMPEG can operate quickly by using the commands to copy portions of the original file without re-coding but you are likely to get problems if your splits are not on the key frames so your best be, (if space allows), to:
- Use ffmpeg to re-code the original video to an uncompressed AVI file - this will make the file a lot bigger but will fill in the missing frames so that your time resolution will become dependent on your frame rate.
- Use ffmpeg to generate the 50(ish) fragments from the uncompressed AVI file re-coding the output as whatever output format you need.
- If you are sure that you have finished with it delete the uncompressed AVI file.
FFMPEG is free, gratis & open source and is available for most platforms.